My music recording setup - using Linux

Hi!

Long time Linux user here who is recently discovering how to use it with Music. My interests include recording simple audio, play-along practicing e.g. using AB repeats, making videos for YouTube upload and simple multi-track recording when my band needs it. I'm about a week in and have a working setup. Happy to answer and questions on it.

Distro

I've settled on Linux audio distro KXStudio after trying out AV Linux and UbuntuStudio. As its multi-boot, I can switch easily between them at boot time.  I've a separate, mounted partition on my laptop HDD for all files (recordings, etc) that I want to share with all the distros and I back this partition up to Google Drive. See below of the partition setup.


Hardware
Laptop: Thinkpad X301 2GB RAM
USB audio devices

  • Zoom B3 - I record my bass through this
  • Apogee One - I playback through this into headphones
  • Basses - Fender Precision '73 (with flats) , Lakland JO5 Skyline
Software
The apps I use are all integrated with each other, but had to do a lot of Googling and reading to get it all working how I want it. Screenshot from a recording today. Incidentally no webcam (integrated or modern Logitech C920) I've tried gives me sufficiently high FPS on this oldish laptop, so I've resorted to the video from my Nexus 5X Moto G and will edit them together with Cinelerra or similar (I ended up using Kdenlive)
  • ALSA - audio system, default on all modern Linux systems
  • JACK - essential for powerful audio routing
  • Cadence - automates JACK and ALSA (even PulseAudio) plugins and interoperation
  • Claudia - audio session management which automates recording and playback
  • Audacious - audio player
  • TimeMachine - audio record into W64 format (advanced WAV)
  • alsa_in , alsa_out - used to pipe audio into/from JACK
Tip
If you have multiple USB audio interfaces (I have four) then fixing them to ALSA indexes means that whenever you attach any one or more of them at the same time, they still, reliably, have the same unique identifier.  This is important for automation, since you can simplify on-the-fly setup.  e.g. Zoom B3 is configured to Index 5, so I can create a persistent audio connection to the Recording Room in Claudia.  Here's the ALSA config to make this happen on KXLinux.
 kiat@xmas:~$ cat /etc/modprobe.d/alsa-usb-devices.conf  
 #  
 # The first configuration line will put the FastTrack Pro at device number 5 with 24bit mode, max.  
 # 48kHz sampling mode, 2 inputs and 4 outputs. This is the default.  
 #  
 #  See if any of these work!  
 #  
 #  * 0×01 : use the device_setup parameter, always needed  
 #  * 0×02 : enable digital output (channels 3,4)  
 #  * 0×04 : use 48kHz-96kHz sampling rate, 8-48 kHz if not used  
 #  * 0×08 : 24bit sampling rate  
 #  * 0×10 : enable digital input (channels 3,4)  
 #  
 #==================================================================================  
 #  
 # CONFIGURATION LINES:  
   
 # options    snd_usb_audio  vid=0x0c60 pid=0x0003 device_setup=0x1 autoclock=1 index=3 enable=1  
   
 # 1 Apogee One     0c60:0003  
 # 2 Boss BR-80     0582:0130  
 # 3 Pandora PX5D    0944:0200  
 # 4 Zoom B3       1686:015f  
 # 6 Logitech C920    046d:082d  
    
 options     snd       slots=snd_hda_intel,snd_aloop  
 options     snd_hda_intel  index=0  
 options     snd_aloop    index=1  
   
 options     snd_usb_audio  vid=0x0c60,0x0582,0x0944,0x1686,0x046d pid=0x0003,0x0130,0x0200,0x015f,0x082d device_setup=0x1,0x1,0x1,0x1,0x1 index=2,3,4,5,6 enable=1,1,1,1,1  
 kiat@xmas:~$  
As I'm running 3 versions of Linux on this laptop, here's the laptop HDD. KXLinux is sda7, UbuntuStudio sda5 and AV Linux sda6.  A 40G userdata partition is sda2.

 kiat@xmas:~$ sudo fdisk -l /dev/sda  
   
 Disk /dev/sda: 128.0 GB, 128035676160 bytes  
 255 heads, 63 sectors/track, 15566 cylinders, total 250069680 sectors  
 Units = sectors of 1 * 512 = 512 bytes  
 Sector size (logical/physical): 512 bytes / 512 bytes  
 I/O size (minimum/optimal): 512 bytes / 512 bytes  
 Disk identifier: 0x000c6998  
   
   Device Boot   Start     End   Blocks  Id System  
 /dev/sda1  *     63   4096574   2048256  82 Linux swap / Solaris  
 /dev/sda2     4096575  86012009  40957717+ 83 Linux  
 /dev/sda3    86012071  250067789  82027859+  5 Extended  
 /dev/sda5    86012073  141306994  27647461  83 Linux  
 /dev/sda6    141307803  196603469  27647833+ 83 Linux  
 /dev/sda7    196603533  250067789  26732128+ 83 Linux  
 kiat@xmas:~$  
This blog post is based on a forum post I made over at talkbass.com

Comments