sorry, I wanted to write this post earlier but a bad Covid-19 infection kicked me out of life for some weeks. I am healthy since some days but I still have many problems. I wish no one to get infected by Covid-19. My father was infected too but he didn't had so many problems that I had. So, Covid-19 != Covid-19 for everyone.
A photo of my current workspace:
So, I wrote in my last post that I will report about my Wine "use case". Here it is and as you could read before, it is about music production using Ableton Live on Linux.
Ableton Live works very nice without any limits and errors using Linux, Wine, JACK and the WineASIO driver for low latency (5ms is very nice). In my case it is the systemd free Linux distribution named Artix. Artix is based on Arch Linux and is my everyday Linux since some years now...
You see a NOVATION BassStation on the left, then a Behringer TD-3 (yellow) and a Behringer RD-6 (red) followed by an M-AUDIO OXYGEN PRO 25 MIDI controller. In the middle is a Behringer XENYX X1622USB mixer and on the right a second Behringer TD-3 (silver). Two 303 clones are very useful when making acid sound! :D I am missing my two QUASIMIDI "The Raven" currently because they have some broken parts but I am fixing this in the near future and then I can rave on like in the 90's... :)
On the screens you see Ableton Live 11 which is the only DAW (Digital Audio Workstation) working perfectly on Linux using Wine. I read about other DAW's are working too but I really like the user interface of Ableton Live. I came from an Atari world using Cubase in the 90's and Ableton Live was intuitive like Cubase for the Atari computer. Todays Cubase is not an option for me because it does not work on Linux / Wine and also it is too oversized. I will not comment on other software here because I wanted Ableton Live. Maybe for you other DAW's are working great and give you a better feeling in usage but for me it will not. So, just try your favorite DAW using Wine on Linux! If the software is written clean and not using crazy Windows libraries it will maybe work. Ableton Live is using Qt for the user interface and since Qt is available for many operating systems (Linux, OSX, Windows etc.) with the same codebase it is working very smoothly using Wine on Linux. I recommend to get a free trial version of your favorite DAW before buying something because you can get errors and problems later. I tried Ableton Live for some days and stress tested it a little bit and all I did worked right out of the box without any errors. Even a lot of VST plugins are working perfectly nice... :)
To be honest, even free and open source DAW's does not have the power for creating electronic music in a productive way. Ardour is a very nice DAW but it is focused on audio recording. For MIDI it is missing a lot of features. Ableton Live is just what I need to go on fast and be productive and creative. But I use Ardour for recording.
It is very nice to see that there is a way for music production on Linux like a pro. Even if Ableton Live is proprietary software it is a very awesome piece of software. I do not hate proprietary software because many tools are just beeing used by a small group of people in the world and development of such a powerful product is really very expensive. I also use other proprietary software like IntelliJ as IDE for software development and I am very happy with this. These products are often not very expensive and I am soo thankful for their existence.
What is Artix Linux?
Answer from the Artix Linux homepage: "Artix Linux is a rolling-release distribution, based on Arch Linux. It uses real init systems, because PID1 must be simple, secure and stable."
What is Ableton Live?
Answer from Wikipedia: "Ableton Live is a digital audio workstation for macOS and Windows developed by Berlin-based Ableton. In contrast to many other software sequencers, Ableton Live is designed to be an instrument for live performances as well as a tool for composing, recording, arranging, mixing, and mastering. It is also used by DJs, as it offers a suite of controls for beatmatching, crossfading, and other different effects used by turntablists, and was one of the first music applications to automatically beatmatch songs."
What is Wine?
Answer from the Wine homepage: "Wine (originally an acronym for "Wine Is Not an Emulator") is a compatibility layer capable of running Windows applications on several POSIX-compliant operating systems, such as Linux, macOS, & BSD. Instead of simulating internal Windows logic like a virtual machine or emulator, Wine translates Windows API calls into POSIX calls on-the-fly, eliminating the performance and memory penalties of other methods and allowing you to cleanly integrate Windows applications into your desktop."
What is JACK?
Answer from the JACK homepage: "JACK Audio Connection Kit (or JACK) is a professional sound server API and pair of daemon implementations to provide real-time, low-latency connections for both audio and MIDI data between applications."
What is WineASIO?
Answer from the WineASIO homepage: WineASIO is a free software driver for Wine that provides low-latency, high-performance audio by way of ASIO. WineASIO enables you to use professional Windows audio composition, production, or engineering software on Linux.
How all this integrates smoothly into your desktop:
I wrote a small script ($HOME/bin/ableton.sh) to start Ableton Live on my computer because by default my desktop is running PipeWire for handling audio, video streams, and hardware and it is not possible to run a JACK session when PipeWire is running. The script kills all PipeWire stuff, starts a JACK session and Ableton Live afterwards. When exiting Ableton Live Qjackctl is the only thing that remains running but when you quit Qjackctl everything comes back to "normal" because the scripts waits to restore everything. Since I use JACK for other things too I do not kill it in the script but you can uncomment line 9 to automate this task.
In my applications menu I just start the script and not the Ableton Live binary directly. Everything behaves very nice for me and feels like nothing special happened. You can run Ableton Live even without JACK and WineASIO using PipeWire but with latencies around 500ms which makes this setup unusable. We would need a PipeWireASIO driver to solve this. Anyway, there is JACK support in PipeWire using pw-jack but i didn't testet it... ;)
#!/bin/sh killall pasystray killall pipewire sleep 3 /usr/bin/qjackctl & sleep 3 /usr/bin/wine start /unix "/home/hanez/.wine/drive_c/ProgramData/Ableton/Live 11 Standard/Program/Ableton Live 11 Standard.exe" #killall qjackctl wait sleep 3 /usr/bin/pipewire & sleep 3 /usr/bin/pasystray &
I believe the "sleep" commands are not so important but I had problems when not waiting a small amount of time before executing the next command.