[LAD] Mixing audio: Implementing pan and balance

Tim E. Real termtech at rogers.com
Tue Mar 12 05:23:02 UTC 2013

Hi, I need some advice, clear up some confusion:

I noticed our app uses this pan formula:

	vol_L = volume * (1.0 - pan);
	vol_R = volume * (1.0 + pan);

 where volume is the fader value, pan is the pan knob value
 which ranges between -1.0 and 1.0, and vol_L and vol_R are the 
 factors to be applied to the data when sending a mono signal 
 to a stereo bus.

When pan is center, 100% of the signal is sent to L and R.
At pan extremities, the signal is boosted by 3dB.

But according to [1], we should be using a Pan Law [2],
 where pan center is around 3dB to 6dB down and pan 
 extremities is full signal.

So I want to change how we mix mono -> stereo and use 
 true Pan Law. I could add a Pan Law selector, seems like it 
 might be useful for various studio acoustics.

Then I noticed we use the same formula above to apply 'balance'
 (using the same pan knob) when sending a stereo signal to
 a stereo bus.

But according to [3] we should be using a true balance control, not those 
 same pan factors above. And according to [1]:
"Note that mixers which have stereo input channels controlled by a single 
 pan pot are in fact using the balance control architecture in those channels, 
 not pan control."

So I want to change how we mix stereo -> stereo and use true balance.

But then I checked some other apps to see what they do.
In an unofficial test I noticed that QTractor seems to do the same thing,
 that is, when pan is adjusted on a stereo track, one meter goes up while 
 the other goes down. RG seems not to have stereo meters and Ardour
 I couldn't seem to make pan affect the meters, I will try some more.
My questions:

Is the pan formula above popular?

What is the consensus on stereo balance - use a Pan Law, being the 
 formula above or otherwise, or use a true balance?

What should I do in the remaining case sending a stereo signal to a mono bus?
If I am using a Pan Law as balance, the two signals will have already been 
 attenuated at pan center so I could simply sum the two channels together.
But if instead I use true balance, at center the two signals are 100%. 
So should I attenuate the signals before summing them to a mono bus?
Currently as our pan formula above shows, there would be no attenuation.



More information about the Linux-audio-dev mailing list