If you’ve ever wanted to figure out how to use Linux to help you get your electric guitar into a virtual amp on your computer, along with your favorite virtual effects, then this starter-level/intro post is for you. Until I wrote this post, I struggled to actually figure out how to configure Guitarix in stand-alone mode in Linux. There are limited videos on YouTube, and the web posts I found were either too vague or didn’t address some of the errors I was receiving. This post was born from the steps I took, and maybe they’ll help you to get Guitarix up and running on your Linux box.
20 August 2020 – Written by Michael R. Myers #mykmyrs
Skill Level: Advanced
What We’re Doing Here…
By using FOSS, we are using the Linux computer as an amplifier for an electric guitar. The application Guitarix has an assortment of effects, tubes and allows you to create a guitar tone. This tone can be used for practice, jamming with a backing track or for recording.
If you’re coming from the Mac or Windows world, you’re probably already familiar with the virtual amps and effects that can be used in those environments. Guitarix is very similar to paid audio software, but it’s completely free for the Linux crowd.
The big difference between Mac or Windows and Linux is that Linux requires some small configurations and the use of a few applications to assist in mapping the input and output audio. It really seems more complicated than it needs to be, but maybe my own inexperience is talking on this point. Once I got Guitarix to actually output my guitar’s signal, I was quite happy to say the least.
What You’ll Need to Get Started
- A Linux distro installed on your PC. I’m using Linux Mint 20 in this tutorial.
- A USB audio interface for electric guitars. I’m using my Digitech GNX4 Guitar Workstation.
- Software from your Linux Software Manager
Some Notes Before We Begin
While I will show you how to configure Guitarix in Linux Mint, I would bet a lot of money that I have missed many, many functional and rational points, due mostly to my inexperience and unfamiliarity with Linux tools . This was my first time getting these components into a working order, and I’m sure there are far more capable folks than I that can set this up better/faster/cooler.
It may be my inexperience with Linux and its tools, but it seems like I have to re-wire the inputs and outputs with Catia every time I open up Guitarix. Maybe someone more seasoned can let me know what I am missing so that I don’t have to reconfigure every time I want to play.
Are there presets available for Guitarix? I’d like to see what it’s really capable of for metal guitar, and presets are always a great starting point. If you know of any, please let us all know in the comments for this post.
I tried to use an iRig HD 2 USB audio interface, but Mint would not recognize it a hardware device. I also tried an original iRig HD USB device, which was also not recognized.
My Digitech GNX4 is still supported as USB audio interface, fifteen years after my purchase. It works in Linux. It works in Mac. It works in iOS. It works in Windows 10. It JUST WORKS.
I configured my audio interface to output a dry signal only since it is a multi-effects unit and I wanted the guitar tone without any effects. For the GNX4, here are the steps.
Steps to Configure Guitarix in Linux
- Before starting, you may want to update your system’s software using the Update Manager to ensure you have the latest and greatest fixes.
- Make sure you have your USB audio interface connected to the computer and powered on, if necessary.
- Open the Software Manager and search for “qjackctl”. If you don’t have it installed already, go ahead and install it.
- From within Software Manager, search for “guitarix” and install it.
- To assist with visual input and output mappings, visit KXStudio and download and install Cadence and Catia.
- While I didn’t have to add myself to the “audio” group on my machine to get my Guitarix working like many internet posts suggested, I added it just in case. From the Mint menu, choose Administration>Users and Groups. The screen for my user showed that I was not in the “audio” group.150
- Click the “Add” button and place a check mark beside the “audio” group. When you return to the Users and Groups window, you will see the new group added to your user groups.
- Now, let’s take care of getting QJackCtl configured so that we can process our audio input and output properly.
- From the Mint menu, choose Sound and Video>QJackCtl. After loading, you’ll be presented with this screen. Using this application, we will configure how JACK handles audio input and audio output for the entire system. I think of this to be like a mixing desk for the entire system where audio can be routed as needed.
- Click the Setup button. From the first tab, Parameters, we’ll configure our input audio source. The source will typically be your USB or Firewire audio interface. Do not try to use a computer soundcard here because the latency is too great and it will not work properly.
- I’ve named my Preset “GNX4” and saved it so that I can recall it in the future. Set the Driver to “ALSA”. Check to enable the “Realtime” option. Set your Interface to your audio interface in the list. Set your Sample Rate to as high as your interface can go, typically 44100 or higher. Set your Frames to a value that provides the lowest audio latency as possible. The higher the number, the longer the latency. Click the Advanced tab to continue.
- On the Advanced tab, I selected Monitor, set my Output Device as my computer’s soundcard/speakers and set my Channels to 2 IN and 2 OUT. Press OK to save your settings.
- JACK will start and you will leave it running.
- Let’s configure Guitarix in Linux so that we can select a preset and wire its audio to our JACK instance so that we can hear our guitar. Click on the Mint menu and choose Sound and Video>guitarix.
- When Guitarix loads, your screen should look similar to this one. We can now wire up JACK and Guitarix using the Catia application.
- Click the Linux menu and choose Sound and Video>Catia. You’ll see a graphic similar to the one shown here. Using Catia allows for the visual connection of of audio inputs and outputs and can speed up the creation of the wirings.
- Before continuing, we are going to make several steps to wire the system capture to the gx_head_amp. Then we’ll go from the gx_head_amp to the gx_head_fx. Finally, we’ll go from the gx_head_fx to the system playback. After these connections, we will have our guitar playing sound in Guitarix.
- Start wiring by clicking on “capture_1” in the system object. Hold the mouse and drag it to the gx_head_amp’s “in_0” and drop the wire by releasing the mouse. Repeat or “capture_2”.
- Now, let’s wire the amp head to the amp effects. This time there is only one wire to connect.
- Next, connect the gx_head_fx object to the system playback. Here you’ll wire the “out_0” to the “playback_1”, and “out_1” to the “playback_2”.
- When complete, your wiring should look like this image.
- If you’ve done things correctly, you should hear your guitar’s output through your computer monitors.
- Return to Guitarix and test out some of the included presets to start working with the components to make a guitar tone that’s your own.
Now that we learned to configure Guitarix in Linux, you should have Guitarix running in stand-along mode, you may want to look into how configure JACK and Guitarix to play along with a backing track for jamming/practicing. There are some videos on YouTube that may be helpful for this kind of configuration. I personally am moving on to try to figure out how to capture Guitarix’s output in my DAW so I can record tracks in Linux. I hope you learned something here today, and if you have any suggestions, please leave them in the comments below.