I recently read that
Gabe Newell is seriously determined to bring good and quality games to Linux. According to him, this is exactly what is missing, and what currently limits the development of the platform. Of course, he is right. However, for me personally, there is another area that is even more important to me than games - this is music. If I can do without games, then music is necessary for me - as, indeed, for many other people.
In the picture - the workplace Niels Ott , Ardour is running on the computer.My wife is also a musician, and when she saw what sequencers and synthesizers are in Linux - she didn’t even try to figure them out, simply by returning to her Cubase and Reason. Her laptop has Windows 7, and when she writes music, she simply reboots there and runs these programs there.
')
I, using Linux for about 10 years, cannot simply refuse to at least try existing programs. In principle, I can say for sure that in 10 years everything has changed greatly for the better. And yet, what is now under Linux for writing music is very far from ideal. Let's find out together why most of the music is still being written on Mac OS X or Windows.
Let's first consider DAW (digital audio workstation) - digital audio workstations. Since we are talking about writing music (and not just about recording), we are interested in those DAWs that can work as a MIDI sequencer.
energyXT

Out of the box,
energyXT is a fairly ordinary digital audio workstation, which, by the way, works quite well, is available for Linux, Mac OS X, Windows and iOS, allows you to immediately download music to SoundCloud, has a completely user-friendly interface and has a set of built-in tools and effects, and also supports VST-plugins. Loopmasters from Loopmasters also come with energyXT.
If you want to see more details, for example,
this video shows the process of creating a dubstep composition.
At energyXT, I noticed two big minuses:
1. In the default package, do not connect a MIDI controller (for example, a MIDI keyboard). That is, there is an option, but the actual connection attempt leads to a program crash. They write, however, that there is a solution - you can
recompile libaam.so by yourself (here is
a discussion).
But on the other hand, it is not entirely clear why the developer of a commercial program (I bought it for € 39, but they write that it is at a discount, as well as € 59) will not be included in the process and will not solve the problem on its own (it has been known for more than a year ).
Recently, by the way, they released their virtual tool called XTS1, and wrote “Windows / Mac OS X compatible” in its specifications. About Linux is not a word. However, when I
asked them about it on getsatisfaction, they replied that they planned to release a version for Linux.
2. Without JACK, energyXT does not work with my ESI Juli @ sound card. And also, judging by
this discussion , with the M-Audio Audiophile 2496). Accordingly, it is known that the program does not work on sound cards on snd_ice1724 and snd_ice1712. However, apparently, everything will really work if you use JACK.
But, again, just “take and turn on” JACK is impossible (as is done, for example, in Renoise and LMMS). For some reason, the developers did not add the option to switch between ALSA and JACK, but just
wrote how to compile JACK support themselves.
However, overall, energyXT is not bad at all, especially on a laptop (it has rather low software requirements), so it makes sense to download the demo version (all the possibilities work before the purchase, except for saving) and try.
Renoise

Once upon a time, when I was about 5 years old, my elder brother was constantly writing music in FastTracker 2 and, probably, in something like that. All this was still at a time when DOS with some Norton Commander (or often Volkov Commander — also a file manager from a Ukrainian programmer) usually stood on computers. Once I sat down at the computer on which he was making music, and began to press something, change notes, and so on. When my brother came, he was surprised at how interesting the melody turned out. I decided that if it is properly scattered through the channels, it will be very beautiful.
Then I returned to tracker music at a later age (at 8-10 years old, when I started programming, I had QBasic, and so on). On the hard drive all the time there was a lot of music in .it, .mod and .xm. A lot of things remain to this day. It has its own, special charm. And the small size of the files (up to several kibibytes - depending on the size of the samples and other things) has always been an indispensable advantage, especially when it came to the slow Internet, or computer games, which should not have gone beyond a certain size.
Renoise is a full-fledged digital sound workstation based on a tracker approach to writing music - as opposed to the more traditional approach using piano roll.
That is, if usually in sequencers we see a vertically oriented piano keyboard, to the right of which there is a matrix with notes (vertically in it, respectively, the pitch of tones, and horizontally - their temporal location and, accordingly, duration), then in Renoise, and in the tracker software, there are channels (which can refer to different instruments), and on each channel the names of the notes are located vertically again (for example, “releasing” the note is indicated by the special word “OFF” - respectively, the duration of the note we can but understand by the distance to this word).
Which approach is better is up to you. For example, I can not unequivocally say that it is more convenient. Perhaps it depends on a lot at once: what kind of music you write, how well you own a computer keyboard, what programs you used before. But you can definitely say that Renoise is worth trying. Because you can play melodies from the MIDI keyboard, but so well-crafted interface so far you can find few DAW in Linux.
The advantages of Renoise are full - it is a good, convenient mixer, and advanced work with samples, and an excellent interface for specifying automation (automation of changes in various sound parameters as the track plays). There is also a simple
MIDI mapping : choose a parameter and twist a handle (or fader) on your MIDI controller to assign it to this parameter. In addition, Renoise has good support for a sound system in Linux and a rather large community (there is even a site
renoise.ru , and, of course, there is an
official forum ).
More important for many may be that Renoise has good and detailed
documentation .
Ardour
Ardour is another digital audio workstation, which already has a fairly long history (the first release was in 2005) and a very good set of features. Ardour is free software, allows you to create an unlimited number of audio tracks, use editing features without destroying the original (with an unlimited number of undo possible operations), automatically compensate for the delay in the recorded track in case of recording with simultaneous listening of other tracks, and also has many more pleasant features.
It is very convenient to use Ardour with JACK. For example, you can easily synchronously record two different audio streams (for example, one of the output of a software synthesizer and the other from a microphone) into two different audio tracks (of course, there are no restrictions here - you can simultaneously record any number of audio tracks). It is just as easy to sync Ardour with other programs via JACK. For example, you can synchronize it with a software drum machine and, when recording or playing a song in Ardour, listen to the corresponding location of the corresponding pattern in the drum machine.
Jack is generally a very useful thing. The range of tasks that can be solved with the help of JACK is very large. I once even described in the comments on Habrahabr, how can you use it to watch a movie in two languages ​​at once (in different headphones, of course). Similarly, it can be used for dubbing films - so that moving more expensively in the audio editor leads to a corresponding movement in the video player, and vice versa.
Therefore, if you see some kind of audio program that does not support JACK, then, most likely, it is better not to get involved with this program - because it is completely incomprehensible how the authors could not add support for such a useful and necessary tool.
As for Ardour, despite the fact that all the main features are worked out very professionally,
support for MIDI tracks appeared only in the third version, which is still in development (although the 5th beta version has already been released, so you can download and try) .
LMMS

LMMS is a cross-platform digital audio workstation, which was originally flashed as an analogue of FL Studio (then Fruityloops). Interestingly, a little less than 5 years ago I already
wrote about LMMS on Habrahabr. So, if you ask if he has changed during this time, then I will just tell you to download and watch. And yes, he has changed, and dramatically. Previously, it was necessary to press Ctrl + S after each added note - because otherwise, at the next fall (and they were constantly), it was necessary to restore the created melody again. Now LMMS is stable (write in the comments, if you still find glitches - or rather send it to the authors), it does not fall, and it probably has almost all the functionality that should be there in principle. Of course, the authors still have something to work on, but now in the LMMS you can normally write something full, without thinking about past limitations.
LMMS supports importing MIDI files as well as FLP files (FL Studio projects). Built-in instruments allow you to use your existing SoundFont2 and GUS Patches, plus there are various synthesizers.
LMMS also has a
forum and
wiki with good documentation in different languages.
Plug-ins, VST (i), synthesizers

So, we figured out the DAW, let's move on to the plugins and synthesizers. In general, Linux has the following audio plugin standards: LADSPA, DSSI, LV2, VST and VSTi.
At the same time, LV2 is a simple but extensible standard, which is a descendant of LADSPA (and corrects limitations of LADSPA, which are no longer suitable for modern audio programs) and replaces DSSI.
An interesting fact is that Linux supports VST (i) of two different types. In one embodiment, these are native VST (i) -plugins specially compiled for Linux (they have the .so extension). In another version, these are VST (i) plug-ins, which are designed to work in Windows. Support for the second is implemented, for example, in LMMS (using VeSTige) and in
Ardour .
Here , by the way, is another topic on their forum, where it was discussed whether it is necessary to contribute support for native plugins (there are also tips on alternative ways to launch Windows plugins). Native plugins are supported in Renoise, energyXT, and now also
in the third version of Ardour . About native VST (i) plug-ins for Linux there is information on
linux-vst.com and
on the KXStudio website . At the moment, the most interesting plug-ins provide projects
DISTRHO ,
Jucetice and
Loomer .
There are also some very good plugins called
mda-vst . They have
open source code and have binaries for 64-bit Linux.
By the way, about the architecture - at the moment it is most convenient to work on a 32-bit architecture, although personally I still prefer 64-bit.
Everything rests, of course, just in plugins. If you use plugins that have only 32-bit versions, then you will have to use a 32-bit host. If you use a 32-bit host, you will not be able to connect it with a 64-bit JACK, and so on. The
notes to Renoise 2.8 , however, indicate that now you can use 32-bit plug-ins with 64-bit Renoise, but when I checked it, the plug-ins did not work (perhaps they did not implement it specifically under Linux).
So, if you are using 64-bit Linux, then perhaps the simplest will be to put some extra 32-bit. Well, if all the plugins are available under x86_64 - then so much the better: this is, of course, much more convenient.
As for synthesizers, which primarily work as separate applications - noise lovers will love the
din . There is also
amSynth ,
FluidSynth is well suited to use SF2 (very often used with the QInth GUI). And, of course, do not forget about
ZynAddSubFX . Appearing in 2002, now this synthesizer has become a cult. There are many articles about him, there are patches and sound banks, and so on. This synthesizer is definitely worth a try. If you deal with it, then something like that might turn out.
Is there anything with a realistic piano sound?
There is.
Pianoteq is one of the best virtual tools in the world, regardless of platform. It has tremendous possibilities for adjusting the slightest nuances of sound, and, most importantly, the sound of the piano is generated dynamically by means of the processor, and not taken from samples. Usually, when people hear about it for the first time, they don’t even want to try Pianoteq (a great illustration is a
discussion of Pianoteq on linux.org.ru ). However, if you
listen to songs recorded using Pianoteq, read about
who uses it , and also
download the trial version and play it yourself, then all doubts will immediately disappear. Pianoteq is worked out so well that you do not immediately realize that this is generally real.
Of course, Pianoteq is paid (from € 99 for the simplest version of Pianoteq 4 Stage and much more for more advanced options, extensions, etc.), but unfortunately there is no other way to create such a program (scientists and programmers who They worked on it, just so much would not work).
The download volume, by the way, is 20 MiB. Those who have worked with other professional piano synthesizers understand how small it is.
What other good programs are there?
If you just need to write something, without any special tricks, then
Audacity is perfect. You can make a batch of drums in
Hydrogen - there are a lot of possibilities, and it is easy to add additional drum libraries. The best DJ program is definitely
Mixxx . A good audio game (helps to learn to play the piano) -
Piano Booster . A hearing
aid - of course, the
GNU Solfege .
so
We see that in Linux you can and should write music. With DAW, everything is, in fact, in order, there is good support for VST (i) plug-ins. And, nevertheless, the number of available plug-ins and synthesizers is still very small. Under Linux, there is no Omnisphere, no Nexus, no Vanguard. Let's face it - for now, the authors of professional audio plug-ins simply ignore Linux. Has it become better in the last few years? Yes, of course - but in order to be able to really feel free to write music, you need much more. Therefore, the most interesting will be the moment when Linux has enough users to be taken more seriously as a platform for desktops and laptops. It is possible that the emergence of good computer games will lead to an increase in the number of users, followed by improvements in the support of Linux in other areas, including music.
It is also worth considering the fact that far from everything that you hear in popular compositions was created using popular software synthesizers. Something is done on hardware synthesizers, and something is done by
tuning the simplest wave synthesizers.
Therefore, explore the possibilities, create, write - the larger the community, the greater the likelihood that sound software developers will start to perceive Linux much better.