While testing my RPi4 upgraded V3 kit I’ve been getting familiar with the various engines again. While playing some presets on ZynAddSubFx, I realized the R and L panning was reversed. I tried this on all outputs to make sure the wiring was correct on the 1/4" jacks. The SFZ and SF2 players have correct channel panning. I was not running any other plugins or FX in the chain.
I did search posts and found no references to this. Has anybody else noticed this?
I’m running the latest stable code on the RPi4 in the V3 kit. The image is still stock as all I haven’t even imported any new plugins.
Uh… You guys are going to think I’m nuts. Today, after changing nothing on the Zynth, ZynAddSubFx panning is correct and the SFZ and SF2 players have reversed R and L channels.
To be honest It’s a long time since I’ve tested Left & Right…
Even so, this looks like two issues.
THIS IS TRUE.
The L/R channel assignment is opposite in ZynAddSubFx and other engines like the sample players.
THIS IS TOTALLY WRONG, SEE BELOW.
The system L/R channel assignment can randomly change due to some strange race condition or something?
No… I didn’t accidentally reverse my headphones.
DUH! So much for my rigorous scientific testing approach. Clearly I panned channels, switched synth engines and headphones enough that I got my mental wires crossed. The 1/4" outputs had in fact been reversed since it was assembled. I opened it up, reversed the HiFiBerry output connector and now all the outputs are correct.
Still, the ZynAddSubFX problem of reversed channels remains. SF2 and SFZ players have correct R&L while ZynAddSubFX is reversed. Of that I am now quite sure. I assume that can’t be fixed without rebuilding ZynAddSubFX.
It appears that “Swap Stereo” is a global setting within ZynAddSubFx. This must be setup incorrectly in the latest Zynthian image.
This configuration does not seem to change the behaviour. If set in the configuration file or passed as a command line parameter
-S ZynAddSubFx 3.0.5 in Zynthian always sends its audio output reversed. It looks like a flaw within the version of ZynAddSubFx we are running. I don’t see the source code within the Zynthian repo and it is installed from kxstudio repo so it looks like we run the upstream version.
This is a bug in ZynAddSubFX v3.0.5, fixed in v3.0.6. The source code commit fixing this is here.
We use the version in KXStudio repository which has not been updated to v3.0.6 which was released on 22nd January 2022. I have reported upstream to KXStudio so let’s see if they fix this. I would prefer they do it than we take on the burden of managing this package.
Well at least we know where the problem is. Thanks for checking into that. Hopefully they will fix it soon enough. The commit description sounds like panning has been a mess for a while.
We could do with a good left/right test file on the zynth…
That would certainly do the job.
It sounds a bit judgemental to me .
Try it out on a zynthian…
Good point. Maybe something like
“This is the channel that your Zynthian feels should be the left channel. This is the channel that your Zynthian feels should be the right channel. You may feel differently.”
I have long suspected that a left/right shift and possibly a phase shift output on a zynth would be a beneficial addition. Probably in the webconf. But probably best to wait till after the stable release.
Agreed. Great way to correct some bad cabling or other channel configuration error downstream without any fuss.
This is already available! Left /right swap could be added. I avoided too many such features because it was awkward to implement on the UI but we now have a menu for this stuff. We could l/r swap within the mixer (fairly trivial) or do it with jack routing which may prove more complex. Add a feature request and maybe we will see it in someone’s Christmas stocking.
Or is it the channel that identifies as right?