I wrote about taking the plunge and investing in a controller so I could embrace digital music.
I thought it would be relatively simple. It could have been but I’ve needed to add some components to achieve the results I want and it turns out, the hardware I have wasn’t up to it.
The little Raspberry Pi 4B I own is perfectly adequate to run the mixing software I prefer, Mixxx. It doesn’t have enough processing grunt to also run the audio processing utility I want -Stereo Tool- but I’ll get to that below.
The first issue with amalgamating digital music with my analogue equipment was to get the levels balanced, so that the Phono input from the turntables is roughly the same as the Line input from the digital controller. I found I had to red line the outputs from the digital controller to get anywhere close which distorted the sound. I solved this by introducing a little pre-amp to boost the signal between my two mixers: problem solved. It’s the little box with the gold knob above the blue mouse on the right-hand side of the analogue mixer.
The second issue is that it turns out my analogue mixer is actually broken. On one side the RCA inputs (for both Line and Phono) have an intermittent fault that has become an almost-permanent fault. I need to find an audio electronics repair person to replace the RCA unit and hope that it isn’t the board itself that needs to be replaced because that sounds like major surgery.
The third issue is headphone switching. Queuing music happens on both mixers and I need headphones connected to both to do this. The solution is an inexpensive passive audio switcher with 3.5mm/6.35mm ports so I can select which mixer my headphones are attached to. This is the box with the two knobs beside the keyboard on the left of the analogue mixer.
The fourth issue is a display. The solution is an inexpensive QinHeng 16” touchscreen which displays the DJ software and allows me to interact with it. I’m absolutely chuffed with this device as it’s light enough to mount on my selfiestick.
Finally the Raspberry Pi which is the grey box underneath the blue light of a cooling fan on the left of the analogue mixer. For best results I boot from an SSD rather than an SD card, anyone interested in radically improving the performance of a Raspberry Pi should do this. I compiled the latest version of the Mixxx DJing software and a real-time (preemptive) kernel. The little Raspberry Pi handles Mixxx brilliantly, it is absolutely perfect (in combination with the touchscreen) for most people using a digital DJ controller.
But not me. In addition to Mixxx I want to run Stereo Tool for audio processing. Stereo Tool is commercial software which is very good at improving the quality of digital music, particularly if it’s been recorded in a lossy format like MP3 and if it’s been heavily compressed. The downside is it’s very resource hungry.
Using something Like Stereo Tool requires audio routing -digging into the operating system’s subsystems to route audio signals between destinations. Using Stereo Tool with Mixxx on my laptop I configure the Jack Audio Connection Kit to route audio signals like this:
I have to split the audio signals coming out of Mixxx because Stereo Tool introduces a delay during processing. This is fine for the master output signal which the audience hears but not responsive enough for me using the controller and the headphones where the response needs to be instantaneous.
Modern Linux systems use the PipeWire audio subsystem. Jack works out-of-the-box with PipeWire on most distributions but requires some manual configuration on the most recent Debian version (Bookworm) and its derivatives like PiOS on the Raspberry Pi. I spent quite a lot time configuring PipeWire and the applications (thank goodness for pw-jack!) to perform a test of running Mixxx and Stereo Tool concurrently, which failed. The Raspberry Pi isn’t powerful enough to run both.
The solution is to bite the bullet and purchase a device with more processing power. I looked at the Raspberry Pi 5 but it’s touch-and-go in my estimation if the very latest Pi could handle the load. To be safe I purchased a mid-range GMKtec NucBox M5+ for a couple of hundred dollars more instead which definitely will handle the load with overhead for other tasks.
In summary I have a mixer to send to a repair shop and I’m waiting for a new machine to arrive that is powerful enough to perform the processing I need. Oh and I’m waiting for a VESA mount so I can attach the touchscreen to my selfiestick. As things stand at the moment I can mix digital music without audio processing but not with, and I can play analogue but not mix it. This is sub-optimal to say the least. On the bright side I’ll overcome these issues in short order, everything will be working and my great little Raspberry Pi will be surplus, ready for other jobs I can throw at it.
And I am not disheartened! All of this experimentation is solid entertainment. Progress is incremental and I learn along the way, deriving as must satisfaction from the journey as I will the destination.
-SRA. Auckland, 11/iii 2025.
I quit raspberry pie due to SD card issues.
best results I boot from an SSD rather than an SD card, anyone interested in radically improving the performance of a Raspberry Pi should do this.