Old 10-08-2019, 07:32 AM   #1
Colox
Human being with feelings
 
Join Date: Feb 2012
Location: Sweden
Posts: 1,206
Default Wish to make JSFX 'full' stereo summer

Whenever I use Reaper's own mono switch (in L+R mode) I feel I hear mostly the mid, but not much of the sides. For example, the distorted guitars on this song are panned hard left and right, but when I switch to Reaper's mono listening, the guitars get much lower in volume than when heard in full stereo. (I got no pan law active).

And of course, cancelling L and R out against each other is what creates a Mid signal. But I wanted to see if I can make what I might call a full mono switch, meaning sending both channels out through both channels. Something like this:

Code:
in_pin:left input
in_pin:right input
out_pin:left output
out_pin:right output

@init

@slider

@block

@sample
Left = (spl0 + spl1) / 2;
Right = (spl1 + spl0) / 2;

spl0 = Left;
spl1 = Right;

But this still sounds exactly the same as Reaper's phasing out L against R.
I'm not sure what I am doing wrong here?
Like I said, I would like to hear the level proportions of the stereo image even in a stereo sum listening. Could use a sobering word from someone more sober than me. Tnx in advance
__________________
There are only two kinds of people in the world: those who entertain, and those who are absurd.
- Britney Spears

Last edited by Colox; 10-08-2019 at 07:39 AM.
Colox is offline   Reply With Quote
Old 10-08-2019, 07:39 AM   #2
Zeno
Human being with feelings
 
Zeno's Avatar
 
Join Date: Sep 2018
Location: HH
Posts: 918
Default

It is the nature of the matter that signals with a high difference component become quieter when summed to mono. So I really don't understand your problem.
Zeno is online now   Reply With Quote
Old 10-08-2019, 08:39 AM   #3
Colox
Human being with feelings
 
Join Date: Feb 2012
Location: Sweden
Posts: 1,206
Default

Quote:
Originally Posted by Zeno View Post
It is the nature of the matter that signals with a high difference component become quieter when summed to mono.
Ah, right. The two signals cannot co-exist as separate signals in the same channel.

Quote:
Originally Posted by Zeno View Post
So I really don't understand your problem.
Well, describing the problem just got more intricate, realizing more of the conditions I'm facing. I think I'd like to make a mono switch which maintains the proportions of the mix (as heard when in stereo) while collapsing the stereo image to the phantom center. Kindof like putting both speakers in the same spot, or on top of each other, whichever.

To me it would solve the problem I experience now, when trying to EQ material. I usually do that in mono. But when I flip back to stereo, I often realize the EQing is bad, simply because there was more soundmaterial in the whole picture which I couldn't hear as much when I was listening in mono. So I EQ badly because of that.
As I mentioned above, things like hard panned distortion guitars sounds much lower and more dull in volume when I listen to it in mono, which makes me turn up the treble, only to find the treble awfully piercing when I flip back to stereo.
__________________
There are only two kinds of people in the world: those who entertain, and those who are absurd.
- Britney Spears

Last edited by Colox; 10-08-2019 at 09:40 AM.
Colox is offline   Reply With Quote
Old 10-08-2019, 09:44 AM   #4
andyp24
Human being with feelings
 
andyp24's Avatar
 
Join Date: Mar 2016
Posts: 1,242
Default

I guess you already understand this, but

MID = A + B
SIDE = A - B

So, routing the A and B signals to the Left output gives you MID on the left. Routing A and B signals to the Right output gives you MID on the right.

Hence appearing to hear only the MID on your phantom centre.

If you try to let the SIDE signal "coexist" with the MID signal on a track, you get

MID + SIDE = (A + B) + (A - B) = 2A

What you're describing is fundamentally impossible. Sorry 😀
andyp24 is offline   Reply With Quote
Old 10-09-2019, 01:09 AM   #5
Colox
Human being with feelings
 
Join Date: Feb 2012
Location: Sweden
Posts: 1,206
Default

Quote:
Originally Posted by andyp24 View Post
What you're describing is fundamentally impossible. Sorry ��
Hm, naah, it should be possible to do. Some damn how. I ain't giving up
I just put my effort on the wrong solution, initially. You guys confirmed what I feared.

If I can do it with analog (putting both speakers right in front of me, even on top of each other) then I expect it can be done in digital too. Need to go outside the box though, and figure out how. Probably going to be through an intricate signal process with compensational functions or something.

A challenge.
__________________
There are only two kinds of people in the world: those who entertain, and those who are absurd.
- Britney Spears

Last edited by Colox; 10-09-2019 at 01:16 AM.
Colox is offline   Reply With Quote
Old 10-09-2019, 01:34 AM   #6
sonicowl
Human being with feelings
 
sonicowl's Avatar
 
Join Date: Oct 2015
Posts: 739
Default

Quote:
Originally Posted by Colox View Post
Hm, naah, it should be possible to do. Some damn how. I ain't giving up
I just put my effort on the wrong solution, initially. You guys confirmed what I feared.

If I can do it with analog (putting both speakers right in front of me, even on top of each other) then I expect it can be done in digital too. Need to go outside the box though, and figure out how. Probably going to be through an intricate signal process with compensational functions or something.

A challenge.

When you put loudspeaker one next to another, you don't make them mathematically mono. Each speaker is a bit unique, there are level and phase differences across entire spectrum. Plus, they are not time aligned to your two ears. Plus there are room/surface reflections different for each speaker.
So you need to make each channel slightly different in response/phase. Then you need to delays one channel slightly. And make some time scattered delays different for each channel simulating near surface reflections.

Last edited by sonicowl; 10-09-2019 at 02:03 AM.
sonicowl is offline   Reply With Quote
Old 10-09-2019, 09:39 AM   #7
Zeno
Human being with feelings
 
Zeno's Avatar
 
Join Date: Sep 2018
Location: HH
Posts: 918
Default

Quote:
Originally Posted by Colox View Post
If I can do it with analog
But you can't !

Quote:
Originally Posted by Colox View Post
(putting both speakers right in front of me, even on top of each other) then
...the material is still stereo

Quote:
Originally Posted by Colox View Post
I expect it can be done in digital too.
yes, that's very easy to solve ... but it's not mono. it is stereo.
Zeno is online now   Reply With Quote
Old 10-09-2019, 06:30 PM   #8
Colox
Human being with feelings
 
Join Date: Feb 2012
Location: Sweden
Posts: 1,206
Default

Quote:
Originally Posted by Zeno View Post
But you can't !


...the material is still stereo

yes, that's very easy to solve ... but it's not mono. it is stereo.
I can understand I may come off as a fool trying the chase my own tail. But here's my central point:

I want to collapse the stereo width, to no width at all. And I still want to hear all volume relations in the mix the same, as when I listen to it through full stereo.

As it is now, plenty of sound material in a mix gets played back with different internal volume proportions when I hit the mono button. So the soundtweaking/mixing I do in mono doesn't come out right at all when I go back to full stereo, because when I do the volume proportions often change - sometimes very little, sometimes very much. Instruments that sounded very low in volume when heard in mono, due to partial phase collisions, will suddenly show up in full volume strength when I release the mono button. So the EQ curve I just set to it is no longer valid.

Yes, I am aware of that combining two signals or digital streams will cause collisions that phases out some sounds and keeps others.But I don't want that, I want to control the sound in such a way that this physiological event doesn't take place.
This idea is not related to phase for me, it's related to levels. If I can find a way to collapse the stereo width, that is not entirely phase accurate 100%, but it maintains better than 99% of the same volume proportions as when I listen in stereo, then I'll use it.

That's what I'm after, if possible.
__________________
There are only two kinds of people in the world: those who entertain, and those who are absurd.
- Britney Spears

Last edited by Colox; 10-09-2019 at 06:35 PM.
Colox is offline   Reply With Quote
Old 10-10-2019, 02:51 AM   #9
geraintluff
Human being with feelings
 
geraintluff's Avatar
 
Join Date: Nov 2009
Location: mostly inside my own head
Posts: 346
Default

@Colox: Can I ask what this is for?

Is the end-goal just for monitoring, so you can do your EQ in mono because you prefer it that way?

Or are you trying to create a stereo mix that will have the same balance when played out of a mono system?

Geraint
__________________
JSFX set | Bandcamp/SoundCloud/Spotify

Last edited by geraintluff; 10-10-2019 at 08:04 AM.
geraintluff is offline   Reply With Quote
Old 10-10-2019, 03:32 AM   #10
andyp24
Human being with feelings
 
andyp24's Avatar
 
Join Date: Mar 2016
Posts: 1,242
Default

OK, don't say we didn't try to warn you.... :-D

Good luck!
andyp24 is offline   Reply With Quote
Old 10-10-2019, 09:10 AM   #11
geraintluff
Human being with feelings
 
geraintluff's Avatar
 
Join Date: Nov 2009
Location: mostly inside my own head
Posts: 346
Default

Alright, I wrote something: Energy-Preserving Mono

It calculates mono and stereo energy (for each frequency), and resynthesises a new mono signal with the same spectral energy as the stereo one. (There's a bit of extra detail there, but not much.)

I tested it on a few examples (using Spectrum Matcher to compare the energy before/after) and it performs well. Sounds which are completely "inside-out" (inverted phase) are reduced, but everything else from "already mono" to "independent stereo" should be preserved.

It honestly sounds better than I expected, so I might make it official (with nice graphics and a proper release) later.

Geraint
__________________
JSFX set | Bandcamp/SoundCloud/Spotify

Last edited by geraintluff; 10-10-2019 at 01:49 PM.
geraintluff is offline   Reply With Quote
Old 10-10-2019, 12:51 PM   #12
Colox
Human being with feelings
 
Join Date: Feb 2012
Location: Sweden
Posts: 1,206
Default

Quote:
Originally Posted by geraintluff View Post
@Colox: Can I ask what this is for?

Is the end-goal just for monitoring, so you can do your EQ in mono because you prefer it that way?

Or are you trying to create a stereo mix that will have the same balance when played out of a mono system?

Geraint
Hi, yes just for monitoring.

I got this habit of isolating things when I mix. For example if I'm about to adjust the high frequency part of a sound or track, I usually remove everything below 1250hz with a 1-pole HP filter. I don't need to hear the low end for this operation. In fact he low end is distracting, disrupting my judgement ability.

It's basically the same idea to hit the solo button in a mix, to isolate an instrument so you hear what you do to it better. You get better precision and less distractions. I do adjust instrument without soloing too, but I do less of that, and I do it in a later stage.

Same thing with width, removing the 2D stereo from stimulating/distracting my brain and judgement while EQing or adjusting dynamics etc. I don't want to be distracted by directionality, sensations of horizontal movement or notions of depth etc.

So I hit the mono button, and then I realized that the mono button doesn't just collapse the width. It does a whole lot more than just that to the soundscape. So much that .. it's almost not useful, to me.

My inner child comes out, saying "Wouldn't it be great if ..." etc. But then my inner engineer comes out and tells my inner child he's been smoking too much of that Jamaican stuff, and .. yeah, I got a whole damn dysfunctional family inside here.
__________________
There are only two kinds of people in the world: those who entertain, and those who are absurd.
- Britney Spears
Colox is offline   Reply With Quote
Old 10-10-2019, 01:41 PM   #13
Colox
Human being with feelings
 
Join Date: Feb 2012
Location: Sweden
Posts: 1,206
Default

Quote:
Originally Posted by geraintluff View Post
Alright, I wrote something: Energy-Preserving Mono

It calculates mono and stereo energy (for each frequency), and resynthesises a new mono signal with the same spectral energy as the stereo one. (There's a bit of extra detail there, but not much.)

I tested it on a few examples (using Spectrum Matcher to compare the energy before/after) and it performs well. Sounds which are completely "inside-out" (inverted phase) are reduced, but everything else from "already mono" to "independent stereo" should be preserved.

It honestly sounds better than I expected, so I might make it official (with nice graphics and a proper release) later.

Geraint
Oh, wow Geraint!. I've made a simple EEL delay entirely on my own. But you made this seem so effortless, like accidentally sneezing out a few hundred lines of great code.

I haven't put this 'really' through the ringers yet, on my end. But I'm surprised with the workaround you applied.
And to me, it sounds pretty close. I do feel even at 32768 FFT, the sides are lower in volume, but not much. Could be because some of the phase cancellations you mentioned. It's just an emotion though, could be wrong. I gotta sleep first, before I try this 'for real'.

Real low on the CPU too. ~0.2% on my 8 core i7 at FFT 32K.

Of course, it's not really possible to switch it on and off for a direct and fair comparison when one is using larger FFT size. Large FFT size seems to play hell on Reaper's PDC, so switching it on and off repeatedly makes it jolt back and forth in time quite a bit. Using the blend button instead works though.

Wow
__________________
There are only two kinds of people in the world: those who entertain, and those who are absurd.
- Britney Spears

Last edited by Colox; 10-10-2019 at 02:00 PM.
Colox is offline   Reply With Quote
Old 10-10-2019, 02:02 PM   #14
geraintluff
Human being with feelings
 
geraintluff's Avatar
 
Join Date: Nov 2009
Location: mostly inside my own head
Posts: 346
Default

Quote:
Originally Posted by Colox View Post
I do feel even at 32768 FFT, the sides are slightly lower in volume, but very little.
I'm not sure the largest FFT size is actually the best - I expect there to be some kind of tradeoff with a good middle-ground. If you're having a play around with it, perhaps test out some slightly lower sizes as well.

If you still feel the sides are under-represented, let me know and there are a couple of different things we can try.

Geraint
__________________
JSFX set | Bandcamp/SoundCloud/Spotify
geraintluff is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 04:01 AM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.