Creating a Mixdown

jack_capture

The simplest approach to recording the output of Rosegarden and soft-synth apps (e.g. fluidsynth and yoshimi) to an audio file is to use a small command line utility called jack_capture. jack_capture records everything that is going to JACK's system outputs. So, if you can hear it, jack_capture should record it. (The exception would be if you are using something other than system for monitoring, e.g. an audio interface to a monitoring setup.)

In Rosegarden's menu, go to Preferences > General > Behavior and make sure “Use JACK transport” is checked. This will allow Rosegarden to start jack_capture when you press play in Rosegarden.

Make sure playback is stopped and you are at the beginning of the composition.

Start jack_capture like this:

$ jack_capture -jt

The -jt option means “use JACK transport” just like in Rosegarden. This tells jack_capture to start recording when Rosegarden playback begins and to stop recording when Rosegarden playback ends.

Press play in Rosegarden to begin the playback and recording. Press stop when the last sounds have finished.

jack_capture will stop and you should find a file called “jack_capture_01.wav” where you ran jack_capture with the mixdown. Note that if you've run jack_capture multiple times, you will find multiple jack_capture_xx.wav files with different numbers.

To make another recording, you will need to run jack_capture again.

If you need to also record external physical MIDI synths (e.g. a Yamaha DX-7) see the “Physical Synths” section below.

Ardour 8.12

With Ardour each track gets its own “audio in” ports and you can connect Rosegarden and synths to that for a mixdown.

In Ardour go to Session > Add Track… to create an audio track. Give it the name “rg mix” and set the Configuration to Stereo. Click “Add and Close”.

At this point the Ardour “audio_in” ports will appear for the “rg mix” track, “rg mix/audio_in 1” and “rg mix/audio_in 2”. Use qjackctl to patch Rosegarden's master outs to those ins, and fluidsynth's outs to those ins as well. Press qjackctl's Graph button to see the Graph. (If you do not see a Graph button, see “qjackctl Graph Button ” below.) Your qjackctl Graph should look something like this:

Ardour's Audio Connection Manager will look like this:

If you press play in Rosegarden at this point, you will hear nothing because record monitoring is off. In Ardour, select the “rg mix” track and press the “In” (Monitor input) button in the left panel to enable monitoring of the inputs. When enabled, the “In” button will turn orange:

In Ardour, arm the “rg mix” track for recording (circle button on the track), begin the recording (press transport record and then play), and start playback in Rosegarden. Ardour will record the output from Rosegarden and anything else you've patched into the “rg mix” audio ins.

You can also create multiple audio tracks in Ardour and patch each synth along with Rosegarden to individual Ardour tracks. This is the preferred approach as it will let you do further tweaks to the final mix within Ardour.

If you need to also record external physical MIDI synths (e.g. a Yamaha DX-7) see the “Physical Synths” section below.

JACK Transport Sync

To enable JACK transport sync between Ardour and Rosegarden so that one can start the other, first make sure “Use JACK transport” is enabled in Rosegarden. Go to Edit > Preferences… and confirm that “Use JACK transport” is checked. Then in Ardour find the “Int.” button near the transport controls in the toolbar:

That's the external sync button. Make sure it is in “Int.” mode. Click it if it is not. Then right-click the “Int.” button and select JACK by clicking the radio button to the far left in the “Transport Masters” dialog.

Close that dialog and press the “Int.” button. It will now turn green and display “JACK”. Starting Rosegarden playback will now start Ardour and vice-versa. Arm Ardour for recording and start playback in either app to begin recording the mixdown to Ardour.

If you find yourself configuring Ardour the same way over and over, check out Ardour's Session Templates feature. It will save you some time.

Bounce

You can do a mixdown to an audio track within Rosegarden. This is commonly called a “bounce”. To set this up, press the “Graph” button in qjackctl and use the graph to patch all the outputs back into Rosegarden's “record in”. Like this:

(If you do not see a “Graph” button in qjackctl, see “qjackctl Graph Button” below.)

IMPORTANT: To avoid speaker damage, DO NOT connect the record monitor outs back around to the record ins.

Once that's set up, arm an empty audio track for record (make sure nothing else is armed) and press record. When it's done, you'll have an audio track that contains your mixdown.

Audacity

It's possible to do a mixdown with audacity but it is a bit awkward. Audacity does not offer a fixed set of JACK inputs that you can connect to. Instead, Audacity creates a “PortAudio” device and connects it to a single port you specify when you start recording and it disconnects from that port and destroys the “PortAudio” device when you stop the recording.

Make sure you have qjackctl up because we need to use its Graph to make all the connections. Launch the graph by pressing the “Graph” button. (If you do not see a “Graph” button in qjackctl, see “qjackctl Graph Button” below.)

Launch Audacity and go to Audio Setup (or Edit > Preferences > Audio Settings) and select JACK for the “Host”. Under Recording Device, select one of the apps you want to record. You can only select one here, so pick one. We'll connect all the others in a moment. If you are using audio tracks or synth plugins, select rosegarden. If you aren't, select one of your synth apps, e.g. fluidsynth or yoshimi.

Now start recording in Audacity. We are just going to leave the transport rolling while we make the remaining connections. This is the awkwardness I mentioned. If you want, you can pause Audacity and that will keep the connections up while you are making the connections.

In the qjackctl Graph, you will see a “PortAudio” app. This is Audacity. You will also see that it is connected to whichever app you selected in Audacity's audio settings. Go ahead and connect all the other pieces you need to this PortAudio app. Click on a port and drag to another port to make connections.

qjackctl graph with all connections

If you paused Audacity, unpause it now. Start playback in Rosegarden and Audacity will record it.

When you are done, press stop in Audacity (but beware that it will lose all of your connections when you stop).

Next, you will want to trim the recording, etc… before exporting to WAV or MP3 or whatever. Check out the Audacity docs for details.

File > Export > Export WAV File...

While Rosegarden does offer an “Export WAV File” feature, it is currently (June 2025) limited to recording audio and synth plugin tracks only. If that's all you are using, give it a try. If parts of the mix are missing, then try jack_capture.

Physical Synths

If you need to include an external physical MIDI synthesizer (e.g. a Yamaha DX-7) in your mix, you will need to connect the audio output of the synthesizer to an audio interface, then include that input in the mixdown. qjackctl's Graph is probably the easiest way to patch the input to your preferred recording app. But you will likely want to have more control over the mix. In that case you'll probably want to send everything to a DAW like Ardour and do a final mixdown from there.

When working with external synths, make sure Rosegarden's “sync out” port isn't connected to them. It is usually harmless, but some synths cannot handle it.

qjackctl Graph Button

If you cannot see qjackctl's Graph button, it might instead be a “Connect” button.

qjackctl offers two UIs for making connections. You can switch between them via the settings: Setup… > Misc > Replace Connections with Graph button. You can also quickly launch either of them by right-clicking on the Graph or Connect button and selecting Graph or Connections.

When working with qjackctl's Connections dialog, you will see three tabs: Audio, MIDI, ALSA. As of July 2025, Rosegarden only supports ALSA MIDI. Be sure to make MIDI connections in the ALSA tab. The “MIDI” tab is for JACK MIDI which Rosegarden does not support.

 
 
doc/creating_a_mixdown.txt · Last modified: 2025/07/14 16:20 by tedfelix
Recent changes RSS feed Creative Commons License Valid XHTML 1.0 Valid CSS Driven by DokuWiki