Softmix
Background
This project is about solving a specific problem I've encountered multiple times as a recording engineer. I often find myself in a session where I have multiple instrumentalists playing live together. In such situations, having an easy way of creating personal foldback mixes is key. That's what Softmix is supposed to be all about!​​​​​​​​​​​
Ease of use
The sole purpose of the application is to take all available inputs and mix them to a specific analog output. That's it! ​​​​​​​​​​​
​
The average user
Softmix is useful to any recording engineer who is working with live bands and who is recording multiple musicians at the same time.
Current state & road map
As of today, the application can run on my M1 MacBook Pro from 2020. The program displays available audio devices, settings for buffer size and sample rate, faders for every available input as well as audio metering. The application also outputs actual audio!
​​
Worked on right now
This project is still in the development stage Alpha and there are a few more features to be implemented before shifting to Beta:​
-
Dynamically add mixes (sets of faders) per analog output pair or analog stereo output.
-
Panning
-
Serialization
​​
Future
Besides polishing the look and feel of the application and optimizing the code further I have a few concerns which I will attend to during the Beta stage. The main goal is to have a version ready to be tested in my studio later this year!
​

​​Working with the JUCE framework
Softmix is created with the JUCE giving me hands-on experience from developing with the framework.
​
​​​Compromises
While creating this application I have realized both its strengths and weaknesses. Taking in account all various models and brands of audio interfaces that
might be in use I know that the software can never be as fast as the hardware accelerated ones that often come with an audio interface. This, on the other hand, also means the application will never be tied to a specific model or brand making it a very modular setup.
​
​
​​Concerns
Since the application is running on the CPU (which can be completely exhausted from calculating real time audio in a DAW) one big concern I have is the latency. In my mind, this application will mostly be used together with a DAW in "Tape mode", where the DAW is outputting no audio except maybe a metronome. This also means the DAW have close to zero plugins active which leaves more room on the CPU.
Another big concern I have is about running the application along side another software monitoring software. This will lead to duplicated audio being sent to the D/A and possible clipping or phase issues.​​​