An Open Source Digital Audio Workstation Setup
Software Synth Setup
Software Synth MIDI Device SetupOnce Jack and Rosegarden are up and running you can start ZynAddSubFX (or other software synth). We will be using Rosegarden's Piano Roll to trigger the synth's sounds. The Piano Roll interface is added to tracks in a Rosegarden file with the Pencil Tool, and subsequently they become Track Segments.
iUsing this kind of setup gives us a clear editable, visual representation of where the synth starts and stops within the mix.
As we will be using Rosegarden's piano roll to trigger the software synth (in a simmilar way we used it to trigger the drum machine) we first need to setup a midi device. This step is the same for setting up all new midi devices and follows a similar procedure to that which was outlined previously in Step 4,
- In Rosegarden open the Manage MIDI Devices window and click "New.." to create a new device
- Unlike setting up a Drum Machine we will not configure the new device's banks, instead simply double click on the new devices name and give it a more meaningful name.
- With the new device selected click the name of the software synth in the "MIDI Outputs" section. The software synth chosen shows up as ZynAddSubFX.
You can now close the Manage MIDI Devices window as the synth can now be triggered from Rosegarden.
Piano Roll Track SetupWith the new midi device set up, you are ready to add a piano roll track segment to trigger the synth.
- Choose a track in Rosegarden by right clicking on it's name, move your mouse down to the fly-off menu associated with the new midi device (you setup) and choose one of the 16 channels that are available for that device.
- With your Pencil Tool in Rosegarden draw a Track Segment (on the track you setup) and double click that Track Segment to enter Piano Roll editing mode for it. Click the piano keys to test the synth's sounds.
Multi-channel Track setupYou will often need to use more than one synth sound in a composition, setting up other software synths that use JACK will follow a similar procedure as that outlined above. However, if you already have the software synth that you wish to use set up as a midi device and simply want to use another bank from that device.
In Rosegarden right click on the track name you would like to use for triggering that synth-sound and select an unused channel.
In the software synth package (such as ZynAddSubFX) edit the channel corresponding to the channel number you selected in Rosegarden and choose another bank for that channel. This can easily be set up in ZynAddSubFX by following these instructions,
- 2aClick the Panel Window button in the main interface
- 2bTick the appropriate channel number
- 2cClick the blank area directly below the channel number (where the bank's name would usually appear) and select a bank from the resulting window.
Using ALSA MIDI Compliant SynthsSome synths for Linux are compliant with ALSA MIDI standards, fortunately the package "a2jmidid" is a daemon that can create virtual ports that JACK can identify and you can subsequently use to create connections between various softwares.
- Using a2jmidid is easy, first install it through your package manager, then open a terminal and type:
If a2jmidid has been installed correctly you will see a message indicating that it has started. It is recomended leaving this terminal window open to remind you that you have started the a2jmidid process in the background.iNB. Closing the terminal window will not kill the a2jmidid process, press Ctrl-c with the terminal window active to stop the a2jmidid process.
- In JACK a new Midi Readable Client has been created with an associated Output Port. In the following example this port can be identified as "Midi Through Port-0". Open JACK's Connections Window and click on the MIDI tab to identify the name of the new Output Port. You can find an example of this name highlighted in the illustration below.
- Use this new Output Port in Rosegarden to setup a New Midi Device as per the instructions listed above (Software Synth Midi Device Setup). Next we will start an ALSA MIDI compliant synth and link it to this port.
With your new midi device setup, you are ready to start an ALSA MIDI compliant synth. Yoshimi is an example of such a synth. When you start Yoshimi you will need to adjust it's JACK connections manually.
- Open the Connections Window of JACK and click the Midi Tab. Locate the Midi Readable Client Output Port that a2jmidid created ("Midi Through Port-0" as in the preceding example) and Connect that port to Yoshimi's Midi In Port in the Writable Clients / Input Ports section. You can now trigger Yoshimi from Rosegarden using the Midi device you just setup. Refer to "Piano Roll Track Setup" and "Multi-channel track setup" on this page for further instructions.
- If Rosegarden is sending midi data to Yoshimi, but you cannot hear the sounds from Yoshimi. In JACK open the Connections Window and go to the Audio Tab. Connect Yoshimi's Readable Clients / Output Ports labled "left" and "right" to the Audio Tab's Writable Clients / Input Ports System "playback_1" and "playback_2", respectively. Use the illustration below as reference.