First look at the Zrythm Digital Audio Workstation

Alpha Symphony

Article from Issue 261/2022

Zrythm is an open source digital audio workstation that will one day compete with commercial tools like Bitwig Studio and Tracktion Waveform.

Linux offers many options for producing music – some commercial and some open source. The open source side has made lots of progress over the past few years, but the all-free studio still has some gaps. For instance, when a music maker wishes to work with loops for music production, the most viable solutions, such as Tracktion Waveform and Bitwig Studio, are still proprietary. The Zrythm [1] project by Alexandros Theodotou looks to close this gap with free software (Figure 1).

Figure 1: Zrythm alpha.29, showing its sunny side with MIDI tracks (here featuring the Calf Monosynth).

Zrythm is a free Digital Audio Workstation (DAW) that is brand still in the development stage, but you can download it right now to try it out.

Strong Start

Alexandros Theodotou had already been working on the LV2 plugin system for some time when he decided to build a freely licensed DAW that would meet his needs. He is specifically interested in electronic dance music (EDM). To succeed with EDM, a DAW must be able to handle MIDI sequences alongside live vocals. In addition, Alexandros wanted comprehensive options for manipulating and looping prerecorded or DIY samples.

The use of effects as musical instruments is also popular in EDM: Samples and entire mixes are processed with intensive filters with settings that change dynamically over the course of the composition. To achieve these effects, a DAW needs to offer a wide range of options for automating these parameters.

Theodotou's commitment to the project is easy to see from his website: He provides short but succinct clips presenting the central functions and answering the most frequently asked questions [2].


Zrythm is available as free software under the GNU Affero GPLv3 license. You can download the source code anonymously and as a daily build. Much like Ardour, Zrythm offers a convenient installer for all popular Linux variants. The developer asks for a contribution of an affordable £10 (~$12) for the installer, and you can pay by PayPal or credit card (Figure 2).

Figure 2: For a small fee, you can purchase the Zrythm Installer for all platforms and variants.

The installer packs the software into the usual Linux filesystem context below /usr. In addition, there is an AppImage that only stores the configuration files in the user's home directory and can simply be deleted if you don't like it. In our lab, the AppImage worked out of the box on Ubuntu Studio 20.04 with the low-latency version 5.13.0-35 kernel and Jackdmp 1.9.12 running at application startup time. The installer prompts for the desired audio back end, and you can run a function test right away. Apart from the unavoidable startup delay, I experienced no noticeable difference between running the AppImage and the permanently installed package. I installed the DEB package in our lab. (For more information, see the box entitled "Plugins, More Plugins.")

Plugins, More Plugins

It's not easy to incorporate the many different types of plugins that now exist for Linux into a DAW. Waveform relies on JUCE, developed in-house, and Zrythm uses Filipe Coelho's Carla. Carla works quite well and automates the process of installing Wine components (Figure 3), which is often unavoidable.

Figure 3: When loading a VST plugin, such as the Feldspar synth, the required Wine components are automatically downloaded and installed.

Almost everything that works reliably in Carla, especially any high-quality LV2 plugin, is also immediately available in Zrythm. However, Carla does not provide a tool for accessing the presets supplied with the plugin. Plugin developers are encouraged to include such a tool in their own graphical interfaces. If you don't have a tool for accessing presets, you need to set the parameters yourself for each new use case. Fortunately, Zrythm stores the settings, so when you discover that perfect sound, you can easily find it again.

Hard Hats On, Building Site

When you first launch Zrythm, you can create an initial project and choose a directory for it. The default setting is to store project data in ~/.local/, and this offers a few advantages. Instead of filling the home folder with additional visible folders, the projects are tucked away in a hidden section.

The Zrythm interface is nicely designed and rich in features (Figure 4). The program uses the Gnome desktop's GTK 4 toolkit, but it will also run on other Linux interfaces. In terms of the underlying concept, Zrythm follows the style of applications like Tracktion Waveform, although you do not edit MIDI clips in the Arranger track, but in a separate editor.

Figure 4: Zrythm offers rich options for using both MIDI and audio clips in loops. Carla, opened on the right, helps to integrate with the JACK system.

In the Arranger section, clips can be cut, extended, shortened, arranged, and, most importantly, looped. Anyone who has struggled with the time-consuming clip cloning process in Ardour will find Zrythm faster and more intuitive. However, if you use Ardour, everything works as you would expect, and Zrythm gives the impression that the software still has a way to go. (For instance, it is not clear how to set the end of a clip so that only the visible block actually repeats when you configure a loop. ) Of course, this is not a problem if you import clips that already have a fixed length. For clips with the right length, the editor offers very interesting manipulation options. Two green range indicators at the top of the editor let you intuitively set the data in the clip that is actually played and repeated. A small blue pointer additionally lets you set the start of the repeat (Figure 5).

Figure 5: Only a single bass drum beat from a longer drum sample is selected in Zrythm's audio clip editor; the clip is then played as a loop in the arranger.

These loop tools are available for both audio and MIDI clips. Zrythm currently doesn't offer much in the way of working functions for audio  – other than a volume curve for downstream editing. You will, however, find some useful MIDI options that you don't often see elsewhere. For example, you can highlight chords in a chord track at the top of the arranger as metadata. There's also a convenient toggle for the drum notes, and inserting and editing notes is easy.

The only feature that is a bit rough is the one that sets the velocity bars in the MIDI editor. Events that have a Maximum Velocity of 127 cannot be touched with the drawing tool; instead the box border is highlighted and you can only make the box bigger or smaller. As a workaround for this minor niggle, I recommend the Ramp tool in the toolbar. You can use the Ramp tool to lower all the bars a little; after doing so, you can access them again.

Theodotou has only implemented a few keyboard commands thus far; more keyboard commands would be useful for controlling things more precisely. On the right side of the editor, you can display an event list that shows the exact data for each note. This could solve any problem that you have with the graphical editor, but the ability to manually edit the values in the list is still on the wish list. You can, however, adapt the user interface and provide additional customization through scripting (see the box entitled "Scripting and Customization").

Scripting and Customization

Zrythm is a GTK 4 application, which means you can use CSS to design an interface with a look & feel similar to a web page [3]. If you don't like the dark default look, you can define your own colors. Just copy the template from /usr/share/zrythm/themes/. The CSS file is derived from the Adwaita theme for GTK, but it is not yet particularly well documented for Zrythm. You might need to plan a little time for trial and error to get attractive results. Theodotou claims that further customization is possible using scripts, for which he has integrated the Scheme Lisp dialect with GNU Guile into Zrythm. If you enjoy counting your way through innumerable brackets at the end of nested blocks, you will enjoy this and be able to automate many operations in the program. A still somewhat incomplete introduction to scripting and the API is available in the Zrythm online manual [4].

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • FOSSPicks

    After building a 3D printer last month, Graham's home is now filled with cup holders, phone holders, cable holders, and tiny PLA boats. This month, Graham explores Zrythm, Mumble 1.3, NoteKit, Kirogi, monolith, pastel, Nu Shell, PacVim, Stunt Car Racer Remake, and more!

  • Tracktion T6

    The Tracktion digital audio workstation is finally taking off as it reaches version 6.

  • Bitwig 1.3

    Bitwig Studio 1.3.5, together with the JACK sound server, gives users the freedom to produce professional-quality tracks.

  • Ardour3 Digital Audio Workstation

    The latest version of Ardour – a full-featured digital audio workstation – offers some major new developments. We take a closer look.

  • Bitwig Studio for Linux

    Bitwig Studio is the first complete music workstation offered as a commercial product for Linux. Now, Linux finally offers music production software that has, up to now, only been available on other platforms.

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More