This is part 2 of my tour through Linux digital audio workstations (DAWs). Take
a peek at part 1 for some background and the first five
DAWs. These are good times for Linux as a platform for audio
production, and great work is going on in Linux audio development. Let's
look at some more of that work.
In its original design, MusE
included the standard suite of tools for recording and editing audio and
MIDI data. MusE's MIDI capabilities included piano-roll and event-list
editors, along with a page for note entry and editing in standard music notation. Eventually the notation editor was removed, the program's original author moved on to other projects, and MusE development continued as a team project.
On June 30, 2012 the team announced the public availability of MusE version
2.0 (shown above). This release can be considered a big milestone for
MusE—the GUI toolkit has advanced to Qt4, the music notation editor
has returned, all viable plugin formats are supported, a Python interface has been added for scripted automation control, and so on. Clearly its developers want a MusE for the 21st century.
I tested MusE 2.0, built locally from its SVN sources. I encountered no
problems compiling or configuring the program, and as you might expect from
a 2.0 release MusE appears to have no stability issues. Some demonstration
files are available for study purposes, but they're not very exciting. I
loaded a MIDI file of an orchestral piece, invoked MusE's FluidSynth plugin,
set the track outputs to the synth, and MusE was rocking to Bartok. Despite
my questionable taste in soundfonts, MusE performed like a champion, with
no audio glitches or xruns (buffer under or over-runs) reported by JACK.
Two notable projects have been derived from the MusE project. Werner
Schweer's MuseScore is a fine
standalone music notation program with a UI similar to those of the
well-known notation editors for other platforms. Open Octave MIDI is a significant fork of the MusE sequencer, a MIDI-only version with many features added specifically for composers working with the large-scale MIDI resources required for orchestral pieces and full-length movie soundtracks.
The Non DAW
Developer Jonathan Moore Liles was evidently unhappy with the state of the Linux DAW—and much else in the Linux audio world—so he created his Non* software, a set of programs for recording, mixing, and editing audio and MIDI data. The Non DAW is the audio recorder in the set.
The developer has specified what he wants from a DAW: "non-linear, non-destructive arrangement of portions of audio clips [and] tempo and time signature mapping, with editing operations being closely aligned to this map". By design, the Non DAW is a track-based audio recorder/arranger that outsources its signal routing, mixing, and plugin support to JACK and JACK-aware applications designed for those purposes, such as the other members of the Non* family (the group includes a MIDI sequencer, a mixer, and a session manager). The family's few dependencies include FLTK for its GUI components, libsndfile for audio file I/O, and liblo for OSC messaging support. All dependencies for the Non* programs are commonly found in the software repositories of the mainstream Linux distributions.
Incidentally, JACK is absolutely required, as there is no support for any other audio or MIDI system. Direct ALSA will not work with the Non* suite, though of course the ALSA system is needed by JACK.
Since the Non DAW is available only in source code, I built and installed
it on a laptop running AVLinux 5.0.1. I recorded a
few tracks, tested playback control (from the Non DAW and from QJackCtl),
and got a superficial view of the program. I must emphasize
"superficial"—there's much more to the Non* software than meets the
eye. The Non DAW is light on system resources, but it certainly isn't a
lightweight. Again, by design, the program has
limitations—no soundfile import, no MIDI tracks, and no plugin
support. The Non DAW resembles the hard-disk recorder systems of the early
1990s that focused on a single task. The Non DAW and its modular approach may not suit everyone's workflow, but I found it fast and flexible.
Developer Rui Nuno Capela's Qtractor was originally planned to function as a replacement for the handy 4-track tape machines popular with home recordists during the MIDI revolution. The Fostex and Tascam companies pioneered the small-scale portable studio, but by the late 1990s little demand remained for such devices. Nevertheless, it seems that Rui missed the 4-track recorder enough to compel him to create a software alternative. The result of this compulsion is Qtractor, Rui's contribution to the Linux DAW line-up.
The screen shot at right illustrates Qtractor's main display with the
familiar track-based view and arrangement of recorded material, but in many
respects the display is truly its own creature. Qtractor's user interface is based on the most likable features of the portable studio hardware—easy access to controls and operations, presented in a direct uncomplicated interface. Simplicity remains a key concept behind Qtractor's development, but, as is the nature of such things, what began as a limited design has expanded into a richly-featured DAW that compares favorably to any other tool in this article.
Among its many strengths, Qtractor supports every plugin format that can be
supported under Linux, including VST/VSTi plugins in native-Windows and
native-Linux formats. Of course it also likes LADSPA, LV2, and even DSSI
plugins, making it perhaps the most comprehensive Linux host for audio and MIDI plugins.
Rui is an apparently tireless developer. His Q* family of software includes a soundfont synthesizer, a MIDI network control GUI, two LV2 plugins, an editor for the Yamaha XG sound devices, a front-end for the LinuxSampler, and a very popular GUI for controlling JACK. You can check out news and information on the whole Q-crew on Rui's site at rncbc.org.
Renoise might be best described as a nuclear-powered tracker. If you're familiar with the MOD music trackers of the late 80s and early 90s then you'll see some familiar sights in Renoise, such as the old-school tracker interface and its divisions. However, Renoise is in another category altogether. It is, in fact, one of the most sophisticated music-making environments available for Linux or any other platform.
Like Mixbus, Renoise is a cross-platform commercial offering with a reasonable price schedule and a boatload of features. The program retains the historic tracker UI, including its division into Pattern Editor, Song Editor, and Sample Editor. Graphic editors are available for many tasks, and Renoise provides extensive support for external plugins as well as offering its own excellent internal plugins.
If you need to be convinced about Renoise's capabilities, I'll direct you to the music of Modlys, Atte Andre Jensen's project featuring the wonderful singing of Britt Dencker Jensen. If Modlys doesn't do it for you, check out some of the other artists' offerings on the Renoise Web site. The program is very popular, and for years its users have been steadily pumping out music made with Renoise.
Rosegarden began its long
life as a MIDI sequencer with a standard music notation interface, a rare
thing for systems running X11 in 1993. Today it is a fully capable DAW,
complete with all the expected audio and MIDI features, and it still
provides a very good music notation interface. Rosegarden provides multiple data views—along with the notation editor, we find the expected track/arranger waveform display, a piano-roll MIDI sequencer, a rhythm/drum pattern composer, and a MIDI event list editor. All views update one another, so you can switch between the views whenever you like. Alas, Rosegarden has no integrated soundfile editor, but you can configure it to summon your favorite (mine is set to use mhWaveEdit).
Rosegarden includes some nice higher-level features built-in for the
composer's assistance. For example, the top menu bar includes the typical
headings for File, Edit, View, and so forth. However, the menu bar also
includes headings for Composition and Studio menus. The Composition menu
manages aspects of time and tempo in your piece, including some cool
tempo-setting and beat-fitting operations. The Studio menu provides selections
for accessing the audio and MIDI mixers, configuring your audio and MIDI devices (real and virtual), managing your synthesizer plugins, and setting other global MIDI parameters. Unique studio configurations can be saved and reloaded, and you can select your current setup as the default studio. General MIDI support is excellent, and Rosegarden comes prepared with device profiles for a variety of other synthesizer layouts. If your devices aren't already on the list, you can easily add custom profiles for your gear.
Developers may be interested to note that Rosegarden's Changelog reflects
the many changes in Linux on the larger scale. The program started out as
an X11-based project using the Xaw graphics toolkit. Attempts have been
made to move the program's GUI elements to Motif, Tcl/Tk, and gtkmm, but
eventually the toolkit selection settled on Qt, where it remains to this
day. Over the years its language basis has undergone significant changes. The developers have coded Rosegarden in C, ObjectiveC, and C++ with CORBA. Eventually the CORBA components were eliminated, and Rosegarden is now a pure C++ project with a very handsome Qt4 GUI.
Alas, space is dear here, and Rosegarden has so many features worth describing. I'll leave it by mentioning one of its more unusual attractions: its ability to export your work in Csound score format. Csound has many front-ends, but none with a notation interface for event entry. Like its notation capability, the Csound export facility has been a feature since Rosegarden's earliest releases.
Its Web site claims that with its interface innovations Traverso will let you do "twice the work in half the time". While the statement may not be literally true, speed is definitely the watchword for Traverso. Keyboard and mouse are used separately and together in clever ways that do contribute to faster execution of many operations common to DAWs.
I didn't expect Traverso to be
fully production-ready, since I built version 0.49 from Git sources. Some
aspects of the program are already
polished—the track display GUI seen at left is very cool—while others simply don't work at all. For example, plugin support is a mixed bag at this point in Traverso's development. The program supports only the LV2 format—no LADSPA or VST here—and its support is incomplete. Plugins without GUIs loaded and worked without problems, while any plugin with its own GUI crashed the program. Perhaps it simply needs a more complete implementation of the current LV2 stack, but alas, development of Traverso seems to have halted or slowed to the point of apparent immobility. I hope I'm wrong about that, because there's much to like about Traverso and I'd like to see it evolve.
I've placed Bitwig Studio
out of order for the simple reason that I haven't used it yet. That's
because, as far as I know, it hasn't been released in any version for
Linux. Preliminary reports seem to indicate that the tested version is
running only on OS X, but the company has indicated that a proprietary
version for Linux is a release target.
So why the big noise over Bitwig? Its designers have come from the
development team at Ableton, the company responsible for the popular Ableton Live DAW. Ableton Live redefined
the DAW for a new generation of computer-based music makers, and to date
there has been nothing like it available for Linux. Bitwig may change that
Ableton Live has been described as a front-end for a huge granular synthesis engine capable of realtime time and pitch compression/expansion. Audio and MIDI material recorded or retrieved into the program can be instantly modified to match the composition's tempo and pitch levels. This ability to perfectly match any material has evolved into a powerful method of realtime composition. From what I've seen so far, Bitwig appears to include at least the central characteristics of Ableton Live, and if it can live up to its advertising Bitwig will surely attract more users to Linux for their sound and music work.
By the way, I've included no screenshot of Bitwig because—surprise—I haven't used it yet. As a matter of personal policy I don't add screenshots of anything I don't run here at Studio DLP.
I hope you've enjoyed this little tour of Linux DAWs. and I'd be most pleased if you gave some of these programs a trial run or two. I'd be ecstatic if you made some music with one of the DAWs presented here, so let us know if you come up with something we should hear. Finally, I must note that Linux users have other choices beyond the DAWs presented in this article. See the apps Wiki at linuxaudio.org for pointers to more Linux DAWs.
[For further reading, I recommend:
Leider, C. (2004). Digital Audio Workstation
Roads, C. (1996). Computer Music Tutorial
. MIT Press.]
Comments (13 posted)
Free software didn't start out as competitive with proprietary software. It became so only because a bunch of ethically motivated hackers were willing to "subsidize" the movement with their failed, and successful, attempts at free software and free culture projects and businesses.
— Benjamin Mako Hill
The architecture of the system should correspond to the implementation style. Schemaless, heavy on magic, untyped approaches are suited for modular systems where each individual module is of limited complexity, and where the modules are isolated from each other and can recover from failures. The more complex the individual modules (and sometimes the complexity is inherent to the problem), the more benefits from "conservative" techniques.
— Gintautas Miliauskas
Comments (1 posted)
Version 2.5 of the Calligra suite has been announced
"For the productivity part of the suite (word processor, spreadsheet,
and presentation program) the target user of version 2.5 is still the
student or academic user. This version has a number of new features that
will make it more suitable for these users.
" Additions include a
table editor, a number of spreadsheet improvements, some new input filters,
Comments (31 posted)
Michael Sheldon writes on his blog about TizMee, a library for MeeGo to implement Tizen's Web API. "This first early release should support general HTML5 apps fairly well (although there are still a few that have issues), some aspects of the Tizen API (this is by no means complete however) and pretty much all of the Cordova/PhoneGap API." Packages are built for Nokia's MeeGo Harmattan (the N9 and N950 devices) and the community-built Nemo.
Comments (42 posted)
Behdad Esfahbod has announced a new release of the HarfBuzz OpenType layout engine. The 0.9.2 release is part of an ongoing rewrite, about which he says "I can finally claim that new HarfBuzz is on par with or better than both Pango and old HarfBuzz / Qt
", and "this may be
a good time for distributions to start putting a harfbuzz package together
Full Story (comments: none)
A new release of the Valgrind
debugging tool is available. Version 3.8.0 adds support for MIPS32/Linux and X86/Android, plus partial support for Mac OS X 10.8. The release announcement also heralds "Intel AVX and AES instructions are now supported, as are POWER DFP
," plus "support for recent distros and toolchain components (glibc 2.16, gcc 4.7)
" among numerous other improvements.
Full Story (comments: none)
The first release of the Novaprova
unit test framework for C is now available. The project advertises "advanced features previously only available in unit test frameworks for languages such as Java or Perl
," and includes support for test parameters, mocking C functions at runtime, detection of C runtime errors, and dynamic test discovery using reflection.
Comments (none posted)
Newsletters and articles
Comments (none posted)
In an interview
at opensource.com, Twitter's open source manager, Chris Aniszczyk, talks about the how the company uses (and contributes to) open source. "We use a lot of open source software. In my opinion, it’s a no-brainer as open source software allows us to customize and tweak code to meet our fast-paced engineering needs as our service and community grows. When we plan new engineering projects at Twitter, we always make sure to measure our requirements against the capabilities of open source offerings, and prefer to consume open source software whenever it makes sense. Through this method, much of Twitter is now built on open source software, and as a result the open source way is now a pervasive part of our culture. On top of that, there is a positive cycle of teaching and learning within open source communities that we benefit from.
Comments (none posted)
On his blog, GNOME's Lionel Dricot suggests
that the project should pursue decentralized online services as its next big goal. "Today, freedom is not only about the code that runs on your computer. It is about all the online services you are connected to, all the servers that host your data.
" The concept Dricot outlines seems akin to adding ownCloud-like functionality to the existing GNOME stack. "Because we can offer a level of integration never seen before. With technologies such as Telepathy tubes, XMPP, DBus, developing an online application for GNOME would be as easy as writing a desktop application.
Comments (91 posted)
PyPy developer Armin Rigo describes
for parallel programming in higher-level languages.
"We often hear about people wanting a version of Python running
without the Global Interpreter Lock (GIL): a 'GIL-less Python'. But what we
programmers really need is not just a GIL-less Python --- we need a
higher-level way to write multithreaded programs than using directly
threads and locks. One way is Automatic Mutual Exclusion (AME), which would
give us an 'AME Python'.
Comments (8 posted)
Page editor: Nathan Willis
Next page: Announcements>>