Skip to main content

Topic: foo_dsp_midside (Read 6777 times) previous topic - next topic

0 Members and 1 Guest are viewing this topic.
  • xnor
  • [*][*][*][*][*]
  • Developer
foo_dsp_midside
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
  • L/R to MS
  • MS to L/R
  • L/R to M (the result is a single mono channel)
  • L/R to S (mono like above)


Next plugin will be more complex, I promise.   


Download
  • Last Edit: 07 May, 2011, 07:08:40 PM by xnor
"I hear it when I see it."

  • markanini
  • [*][*][*][*][*]
foo_dsp_midside
Reply #1
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.

  • mudlord
  • [*][*][*][*][*]
  • Developer (Donating)
foo_dsp_midside
Reply #2
You could upload this to the FB2K upload forum, you know....

  • Takaji
  • [*][*][*][*]
foo_dsp_midside
Reply #3
Forgive my ignorance, but can you explain what the side and mid channels are used for?

  • xnor
  • [*][*][*][*][*]
  • Developer
foo_dsp_midside
Reply #4
Ok, now I know and uploaded it to the designated forum: download.
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.
  • Last Edit: 30 April, 2011, 08:43:40 AM by xnor
"I hear it when I see it."

foo_dsp_midside
Reply #5
Where it could be useful - converting from L/R to M/S?
  • Last Edit: 30 April, 2011, 09:26:49 AM by Steve Forte Rio

  • xnor
  • [*][*][*][*][*]
  • Developer
foo_dsp_midside
Reply #6
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.
  • Last Edit: 30 April, 2011, 11:44:20 AM by xnor
"I hear it when I see it."

  • eweitzman
  • [*]
foo_dsp_midside
Reply #7
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

  • xnor
  • [*][*][*][*][*]
  • Developer
foo_dsp_midside
Reply #8
Well some plugins like the graphic equalizer 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.
  • Last Edit: 06 March, 2012, 04:41:05 PM by xnor
"I hear it when I see it."

  • eweitzman
  • [*]
foo_dsp_midside
Reply #9
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

  • foosion
  • [*][*][*][*][*]
  • Moderator
foo_dsp_midside
Reply #10
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.
http://foosion.foobar2000.org/ - my components for foobar2000

  • eweitzman
  • [*]
foo_dsp_midside
Reply #11
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

  • xnor
  • [*][*][*][*][*]
  • Developer
foo_dsp_midside
Reply #12
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.
  • Last Edit: 15 March, 2012, 02:12:00 PM by xnor
"I hear it when I see it."

  • Fujak
  • [*]
foo_dsp_midside
Reply #13
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