Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pan is borked #6623

Open
Andreya-Autumn opened this issue Sep 22, 2022 · 7 comments
Open

Pan is borked #6623

Andreya-Autumn opened this issue Sep 22, 2022 · 7 comments
Labels
Breaking Change In order to close this issue we need to make a breaking change (no backwards compatibility) Bug Report Item submitted using the Bug Report template DSP Issues and feature requests related to sound generation in the synth
Milestone

Comments

@Andreya-Autumn
Copy link
Collaborator

Load Init Sine and press latch.
Move the scene pan slowly towards one extreme. You'll notice the furthest it goes to one side happens around 76-77-ish %, as you keep going towards 100% on the dial it actually comes back around towards the centre.

It gets weirder. Center the pan slider again. Now select the left mixer pan button for the playing oscillator. The sound is heard on the left side. Move the scene pan slider to the left. One would reasonably expect this not to do much, but it brings the sound back to the center. Moving the slider to the right does the same, but makes the combined signal about 6.5 dB quieter.

This is... not good. :P

The pan parameter making any sense would obviously be a breaking change. But Paul proposes a "Legacy Mode" RMB option.

@Andreya-Autumn Andreya-Autumn added DSP Issues and feature requests related to sound generation in the synth Bug Report Item submitted using the Bug Report template Breaking Change In order to close this issue we need to make a breaking change (no backwards compatibility) labels Sep 22, 2022
@Andreya-Autumn Andreya-Autumn added this to the Surge XT 1.1.x milestone Sep 22, 2022
@mkruselj mkruselj modified the milestones: Surge XT 1.1.x, Surge XT 2.0 Sep 22, 2022
@mkruselj
Copy link
Collaborator

mkruselj commented Sep 22, 2022

While at it, don't use the linear taper, use sinusoidal taper.

@mkruselj
Copy link
Collaborator

@baconpaul
Copy link
Collaborator

Yeah xt2 can use the nice pan laws from mixmaster we have in basic blocks like rack and sc do

@Andreya-Autumn
Copy link
Collaborator Author

Makes sense @mkruselj, I figured the stereo widening phase trickery was probably involved. Not such a good choice IMO to make that a function of the pan control, since it gives modulation unpredictable results.

Proposed XT2 Unbork-my-pan*-plan:

  1. Make the pan param normal.
  2. Relegate any stereo phase tricks to the width slider.

(*to the tune of unbreak my heart)

@Andreya-Autumn
Copy link
Collaborator Author

Andreya-Autumn commented Mar 16, 2023

...and indeed the pan law options from MM seems like a nice option to have.

Hmm, lines 318 and 327 makes it seem like "normal" pan behavior should live in -75%..75%. But testing it, I'm seeing the deepest pan at around 79.13%... (not quite -∞ there, but I can't be bothered to look for it). So maybe something is a little off there.

If we wanted to unnnnbork my paaaan already in XT1, putting the present behavior behind an "extend range/legacy" kind of dealio might maybe work? I guess that way it could be streamed for older patches to not break.

And honestly, having that behavior be extended really makes a lot of sense anyway right? It seems very similar to some of the other extendable params, in that most users just wants the normal range most of the time. What do you think?

If we don't do that, at least documenting the present behavior in the manual seems like a good idea.

@mkruselj
Copy link
Collaborator

mkruselj commented Mar 16, 2023

I'd much rather just fix it to not do any weird trickery in XT2. I don't think we should make it extendable, this behavior is just plain bad IMO, and I don't see any good use in it tbh.

@Andreya-Autumn
Copy link
Collaborator Author

Oh the extendable suggestion was for if we'd want to do something about it in XT1. Like a "legacy" switch in disguise lol. :P

And I'm 100% ok with just not including this feature in XT2. Stereo-widening can be handled with the M/S effect anyway. Or external or whatever.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Breaking Change In order to close this issue we need to make a breaking change (no backwards compatibility) Bug Report Item submitted using the Bug Report template DSP Issues and feature requests related to sound generation in the synth
Projects
None yet
Development

No branches or pull requests

3 participants