Balancing Audio in Software

March 6th, 2022
music, tech, whistling
A few months ago I ported my whistle controlled synthesizer to the Raspberry Pi. I configured it with mono output, and ran it through a DI box to get a balanced XLR output I could send to a sound board. I realized a few weeks ago, however, that I don't actually need a DI box, and I can balance the audio in software. Now that I've made the change I wanted to write about how it works.

To send an audio signal, you need two conductors: the signal and a reference (ground):

This works fine, unless you get radio frequency interference. There's energy in the air, from intentional broadcasts or noisy devices, and the weaker your signal or longer your cable the more it will shift the signal:

There are a few different technical solutions, but the most common one in audio is to use a balanced signal. In addition to our signal, we add an "anti-signal" which is the same signal but reversed:

Instead of interpreting the signal relative to ground, we now interpret it relative to the anti-signal. Absolute magnitude is unimportant, what matters is the delta. Now when we get interference, it still shifts our signal, but it makes an almost identical change to our anti-signal, and the difference between the two signals is almost unchanged:

Normally you create the anti-signal with a transformer, in a DI box, but my software already has access to stereo output. If I want to send X, I can write X to the left channel and -X to the right. With a 3.5mm to 1/4" TRS cable I can be as far as I need to be from the board without worrying about interference.

(Do be careful not to use a 3.5mm to XLR cable: you need to connect to the mixer's "line" and not "mic" input. The latter often will provide "phantom power", which is designed to feed microphones power backwards, through their output. The soundboard provides +48V to both the signal and anti-signal pins, relative to ground. This could break your sound card, since that's a lot of voltage to something that was probably not designed to receive it. You might think you could turn off phantom power on inputs that don't need it, but on the (cheaper) mixers you would typically see at a contra dance or bar there is typically one switch for the entire board.)

Referenced in: Embedded Whistle Synth

Comment via: facebook, lesswrong

Recent posts on blogs I like:

Starting With Chords

A lot of people play fiddle. Basically nobody starts by learning chords before learning melodies. But that's actually how I learned. I started with chords. One of the nice things about learning to play violin this way is that you can go busking even…

via Anna Wise's Blog Posts November 15, 2024

Stuffies

I have some stuffies and I just have a bunny. Bunny is a rabbit. Woof is a seal. My favorite stuffie is bun bun. I play with my stuffies. Sometimes I jump up with them and I roll them. I can just throw them in the air when I want to play bthululubp wi…

via Nora Wise's Blog Posts November 15, 2024

You Can Buy A Malaria Net

2024 election takes

via Thing of Things November 6, 2024

more     (via openring)