HydrogenAudio

Hosted Forums => foobar2000 => 3rd Party Plugins - (fb2k) => Topic started by: xnor on 2011-04-29 18:31:01

Title: foo_dsp_midside
Post by: xnor on 2011-04-29 18:31:01
Hello fb2k users,

here's a simple plugin that converts Left/Right stereo channels to Mid/Side channels.

The conversion is very simple: M=(L+R)/2; S=(L-R)/2.

The plugin can convert


Next plugin will be more complex, I promise.   


Download (http://www.hydrogenaudio.org/forums/index.php?showtopic=88378)
Title: foo_dsp_midside
Post by: markanini on 2011-04-29 23:42:51
Any one else having trouble with the download links?
I've found these effects useful on early stereo recordings with non-entered vocals or bass. Nice to see a native plugin of this type.
Title: foo_dsp_midside
Post by: mudlord on 2011-04-30 04:26:17
You could upload this to the FB2K upload forum, you know....
Title: foo_dsp_midside
Post by: Takaji on 2011-04-30 04:30:54
Forgive my ignorance, but can you explain what the side and mid channels are used for?
Title: foo_dsp_midside
Post by: xnor on 2011-04-30 13:39:05
Ok, now I know and uploaded it to the designated forum: download (http://www.hydrogenaudio.org/forums/index.php?showtopic=88378).
I'd be grateful if somebody could edit the first post and replace the download links with the link above.


@Takaji: One use case would be to listen to the mid or side channel only (similar to what the centercut dsp plugin is used for). Another one would be converting to MS, processing mid and side channel separately and finally converting back to L/R again.
Title: foo_dsp_midside
Post by: Steve Forte Rio on 2011-04-30 14:26:13
Where it could be useful - converting from L/R to M/S?
Title: foo_dsp_midside
Post by: xnor on 2011-04-30 16:43:06
See the second use case in my post above.

It's definitely a plugin that has very limited use, but as I said it's my starting point into fb2k DSP plugin development.
Title: foo_dsp_midside
Post by: eweitzman on 2012-03-05 18:28:57
Too bad there aren't any other DSPs that can run independently on each channel, like a dual mono equalizer.

How do you deal with the the gain change when re-applying the M/S processor to a M/S signal to get back to L/R?

- Eric
Title: foo_dsp_midside
Post by: xnor on 2012-03-06 21:39:55
Well some plugins like the graphic equalizer (http://www.foobar2000.org/components/view/foo_dsp_xgeq) or certain vst equalizers offer dual mono options.

About the gain change, do you mean after you processed the MS signal with lets say a dual mono EQ? I guess you'll have to process a couple of files to 32-bit wav and scan the resulting files with ReplayGain to see if there's any clipping (peak > 1.0).

Just converting from L/R to MS to L/R shouldn't cause any gain changes.
Title: foo_dsp_midside
Post by: eweitzman on 2012-03-15 07:49:47
Thanks for the pointer to your dual mono equalizer!

There is always a 6db gain increase when you go from L/R to M/S to L/R. Remember that both transformations sum for mid (or left) and subtract for side (or right).

The first transformation is

M = L + R
S = L - R

The second one is

L' = M + S
R' = M - S

which becomes

L' = (L + R) + (L - R) = 2L
R' = (L + R) - (L - R) = 2R

- Eric
Title: foo_dsp_midside
Post by: foosion on 2012-03-15 09:30:02
The first transformation is

M = L + R
S = L - R
That is different from the transformation given in the first post which includes a division by 2.
Title: foo_dsp_midside
Post by: eweitzman on 2012-03-15 16:36:40
The first transformation is

M = L + R
S = L - R
That is different from the transformation given in the first post which includes a division by 2.

Yes, I see it now, thanks. That's how the author handles the gain issue. In hardware, one would attenuate the final recombined L/R to keep noise low and to allow an insert to work on the bigger signals, all assuming there's enough headroom. It doesn't matter where you attenuate given foobar's wide internal bit depth as long as the inserts don't add much more gain.

I just used the plugin and notice that there are four options for using it. Do you know which ones divide by 2 and which ones don't?

- Eric
Title: foo_dsp_midside
Post by: xnor on 2012-03-15 18:08:00
The options to MS, to M and to S all divide by 2.

Converting back to L/R assumes that the values where divided beforehand:
M=(L+R)/2; S=(L-R)/2
therefore M+S = L and M-S = R.
Title: foo_dsp_midside
Post by: Fujak on 2013-12-02 13:22:57
Hello fb2k users,

here's a simple plugin that converts Left/Right stereo channels to Mid/Side channels.


Hi,

I have some problems using this component. I'm using Foobar 1.2.9 and after installing the dll I receive the following message: “This component is missing a required dependency, or was made for a different version of foobar2000.”

Does it mean, that it will not run under 1.2.9 any longer? And if so, which Foobar version is required?

Any helpful tipp is appreciated.
Fujak
Title: Re: foo_dsp_midside
Post by: giro1991 on 2017-01-12 00:10:56
In order for this to work on XP, maybe win7 as well you need C++ 2010 installed or you will get the error mentioned above.

I had to try many different foobar versions and C++ redistributions to find this out.

my 2C