[sdiy] Pan laws - logarithmic or linear? (SSM2164 stereo panning)

cheater cheater cheater00 at gmail.com
Mon Feb 15 15:50:57 CET 2010


Cos/Sin are equal-power mixing. I am not sure if they would work well
for panning!

Compare the summed power from the left and right channel for sin and log laws:

http://www.wolframalpha.com/input/?i=plot+(sin(x*pi%2F2)%2Bcos(x*pi%2F2))+from+0+to+1


http://www.wolframalpha.com/input/?i=plot+0.5281+*+log(((2x%2B1)+%2F+0.3544212)+-1.821502)+%2B+0.5281+*+log(((2(1-x)%2B1)+%2F+0.3544212)+-1.821502)+from+0+to+1


If you scroll the second one down just enough so that graphs in both
pages are on the same height on your monitor display, and flick
quickly enough between tabs, you will notice that the log law is
'fuller' which means that the extreme stereo separation starts
happening further. Conversely the sine law graph has a more pronounced
peak which means that the sound will suddenly 'appear' in the center.

For example, the log law reaches 90% of the maximum output only when
your pan position reaches 16,9969..%, whereas the sin law only reaches
it when your pan position reaches 21.2867...%, so the virtual object
has to 'travel' 50% further, so to speak, and then it 'shows up'.

http://www.wolframalpha.com/input/?i=solve+0.5281+*+log(((2x%2B1)+%2F+0.3544212)+-1.821502)+%2B+0.5281+*+log(((2(1-x)%2B1)+%2F+0.3544212)+-1.821502)+%3D+0.9*sqrt(2)%2C+x%3E0%2C+x+%3C+0.5

http://www.wolframalpha.com/input/?i=solve+(sin(x*pi%2F2)%2Bcos(x*pi%2F2))+%3D+0.9*sqrt(2)%2C+x%3E0%2C+x%3C+0.5

Terry, what are the laws used for positioning in a 10.2 system? I'll
bet you know, and I'm sure you know someone who knows :-)

D.

On Mon, Feb 15, 2010 at 13:58, Tom Wiltshire <tom at electricdruid.net> wrote:
> Thanks Oscar, that is useful.
>
> I've been experimenting with various functions to try and get something that
> sounds good, and I'm getting closer. I've tried cos/sine curves, and various
> quadratics. My current function is similar to the soft-knee they show in
> this datasheet, but I put the knee in the centre, whereas they have it
> further over to one side.
> I'll try adjusting it like they show and see if that helps.
>
> At least with a lookup table, I'm not struggling to find a hardware
> implementation for any given function. If I can plot it, I can do it -
> simple. Digital does have it's uses.
>
> Thanks again,
> Tom
>
>
> On 15 Feb 2010, at 12:12, Oscar Salas wrote:
>
>> Maybe is useful to you the THAT application note 120: "VCAs in a Pan
>> Potentiometer Application" This is made with the VCAs 2180 that are also
>> logarithmic.
>>
>> www.thatcorp.com/datashts/dn120.pdf
>>
>> Regards,
>> Oscar.
>>
>>
>>
>> --- On Sun, 2/14/10, Tom Wiltshire <tom at electricdruid.net> wrote:
>>
>>> From: Tom Wiltshire <tom at electricdruid.net>
>>> Subject: [sdiy] Pan laws - logarithmic or linear? (SSM2164 stereo
>>> panning)
>>> To: "synth diy" <synth-diy at dropmix.xs4all.nl>
>>> Date: Sunday, February 14, 2010, 10:16 PM
>>> Hi all,
>>>
>>> I wonder if someone can help me get something clear in my
>>> head. I'm getting muddled up between logarithmic and linear
>>> scales.
>>>
>>> I'm trying to implement a sensible-sounding pan on my dual
>>> stereo SSM2164 VCA. This is considerably complicated by the
>>> fact that the SSM2164 has a log response on its control
>>> input. The effect of this is that if you simply fade down
>>> the left channel linearly whilst fading up the right channel
>>> linearly, you get a massive hole in the middle. The sound
>>> moves a little towards the centre, but disappears. Finally
>>> it re-emerges over by the right speaker.
>>>
>>> I understand that the classic pan law is 3dB down in the
>>> middle. In theory, it should need to be 6dB down, but in
>>> practice 3dB is usually enough.
>>> This reduction is achieved by using something that looks
>>> like a cosine curve from 0 to Pi/2 on the left channel, and
>>> the same reversed on the right. In the centre, both channels
>>> are at about 2/3rds or 3/4 of full output.
>>>
>>> Now what I don't understand is what the Y-scale is on this
>>> cosine graph - is it logarithmic or linear?
>>>
>>> I'm controlling the two VCA channels from software using a
>>> 12-bit DAC, so what I'm going to finish up doing is using a
>>> lookup table to compensate for the log control response and
>>> give me something more like the function I'm after. clues as
>>> to what this table should look like appreciated.
>>>
>>> I think I might be suffering from Sunday night burnout.
>>> I've been developing this circuit all weekend, but now I've
>>> got a 'Pan' variable and a 'Volume' variable, and I've got
>>> to convert them into a 'Left CV' and a 'Right CV' and the
>>> response of those two CVs is logarithmic and it's all just
>>> muddling up in my head.
>>>
>>> The 'design process' wisdom was to go and take a break,
>>> right? I'm on it....
>>>
>>> Thanks,
>>> Tom
>>> _______________________________________________
>>> Synth-diy mailing list
>>> Synth-diy at dropmix.xs4all.nl
>>> http://dropmix.xs4all.nl/mailman/listinfo/synth-diy
>>>
>>
>>
>>
>>
>
> _______________________________________________
> Synth-diy mailing list
> Synth-diy at dropmix.xs4all.nl
> http://dropmix.xs4all.nl/mailman/listinfo/synth-diy
>



More information about the Synth-diy mailing list