Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Making MP3's sound more stereo (Read 4719 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Making MP3's sound more stereo

Hello. Is there a way to make the stereo width of a joint stereo MP3 file wider without decoding and re-encoding it?

Re: Making MP3's sound more stereo

Reply #1
Poweramp, Jetaudio for android. Stereotool, iZotope for foobar :))

Re: Making MP3's sound more stereo

Reply #2
@Arachnid79 Does they modify the file?

Re: Making MP3's sound more stereo

Reply #3
No, DSP. Sorry, i'm badly talking english.

Re: Making MP3's sound more stereo

Reply #4
@Arachnid79 Does they modify the file?
Why would they modify the file?

The file contains as much spacial information as there is ever going to be.  All you can do is process the two channels to remove any commonality and so create the impression of greater L-R separation.  This is a DSP effect applied on playback.  If you wanted to bake that into the file so that a player which does not have DSP could reproduce the same spatial effect, then yes it would be necessary to take the DSP output and re-encode it.

I think you might be confusing this with the difference between full stereo and joint stereo.  In full stereo, L and R are separately encoded.  With joint stereo, L+R and L-R are separately encoded.  Joint stereo provides more efficient encoding because typically L-R is a lesser signal than L or R separately.  The actual output from decoding joint stereo is no different than decoding full stereo.  There is very little reason not to use joint stereo.
It's your privilege to disagree, but that doesn't make you right and me wrong.

Re: Making MP3's sound more stereo

Reply #5
Hello. Is there a way to make the stereo width of a joint stereo MP3 file wider without decoding and re-encoding it?
When it comes to files with the lowest bit rate and 11 kHz sampling rate, any ‘enhancer’ will also amplify the coding artefacts that are unavoidable at your bit rates.

Re: Making MP3's sound more stereo

Reply #6
@Arachnid79 Does they modify the file?
Why would they modify the file?

The file contains as much spacial information as there is ever going to be.  All you can do is process the two channels to remove any commonality and so create the impression of greater L-R separation.  This is a DSP effect applied on playback.  If you wanted to bake that into the file so that a player which does not have DSP could reproduce the same spatial effect, then yes it would be necessary to take the DSP output and re-encode it.

I think you might be confusing this with the difference between full stereo and joint stereo.  In full stereo, L and R are separately encoded.  With joint stereo, L+R and L-R are separately encoded.  Joint stereo provides more efficient encoding because typically L-R is a lesser signal than L or R separately.  The actual output from decoding joint stereo is no different than decoding full stereo.  There is very little reason not to use joint stereo.

Why you assumed I don't know joint stereo? I know what is it and that's why I use joint stereo instead of LR stereo. Also, as joint stereo can be encoded as MS stereo, I think expanding it can be achieved by simply amplifying the S channel. I just don't know how can I do that. For me, the only reason to use LR stereo is making encoding and decoding faster, and I don't need it right now.

Hello. Is there a way to make the stereo width of a joint stereo MP3 file wider without decoding and re-encoding it?
When it comes to files with the lowest bit rate and 11 kHz sampling rate, any ‘enhancer’ will also amplify the coding artefacts that are unavoidable at your bit rates.
I just wonder what this process will sound like. I will use it if I like it.

By the way, I'm targeting 32kbps.

Re: Making MP3's sound more stereo

Reply #7
Why you assumed I don't know joint stereo?
Because I was looking for a reason you might ask such a strange question.  If you know all about full stereo and joint stereo, I would have expected you to realise you can't "process" the content of an MP3 in its encoded state.
It's your privilege to disagree, but that doesn't make you right and me wrong.

Re: Making MP3's sound more stereo

Reply #8
Why you assumed I don't know joint stereo?
Because I was looking for a reason you might ask such a strange question.  If you know all about full stereo and joint stereo, I would have expected you to realise you can't "process" the content of an MP3 in its encoded state.

But, some programs can amplify MP3's without decoding and re-encoding it.

Re: Making MP3's sound more stereo

Reply #9
It does beg the obvious question: Why MP3 at 32 kbit/s?
If you are not satisfied with the sound of MP3 at 32 kbit/s for the signals in question, then why use that codec at that bitrate?

Of course it is "possible" to have a DSP subtract a bit of the "mid" from each channel. Or equivalently, subtract a little bit of right from left, and a little bit of left from right. Not saying it will sound good, but why not try.

Re: Making MP3's sound more stereo

Reply #10
No. Goodbye.

Re: Making MP3's sound more stereo

Reply #11
It does beg the obvious question: Why MP3 at 32 kbit/s?
If you are not satisfied with the sound of MP3 at 32 kbit/s for the signals in question, then why use that codec at that bitrate?

Of course it is "possible" to have a DSP subtract a bit of the "mid" from each channel. Or equivalently, subtract a little bit of right from left, and a little bit of left from right. Not saying it will sound good, but why not try.

Looks like you didn't understand my problem. I'm satisfied with the sound of 11025Hz 32kbps stereo MP3. But, my source files have a narrow stereo width. Joint stereo never reduces the stereo width.

Re: Making MP3's sound more stereo

Reply #12
Looks like you didn't understand my problem. I'm satisfied with the sound of 11025Hz 32kbps stereo MP3. But, my source files have a narrow stereo width. Joint stereo never reduces the stereo width.

Then widen the stereo image before encoding instead of trying to do it after encoding.


Re: Making MP3's sound more stereo

Reply #14
Hello. Is there a way to make the stereo width of a joint stereo MP3 file wider without decoding and re-encoding it?

https://wiki.hydrogenaud.io/index.php?title=Foobar2000:Components/Channel_Mixer_(foo_channel_mixer)

The forum messes up when the URL ends with a closing parenthesis. Either use URL tag, or replace by "%29" like
https://wiki.hydrogenaud.io/index.php?title=Foobar2000:Components/Channel_Mixer_(foo_channel_mixer%29
- or trust the user to copy and paste instead of clicking.

Re: Making MP3's sound more stereo

Reply #15
But, some programs can amplify MP3's without decoding and re-encoding it.
Yes, because there is a built-in gain property which can be edited.  Those programs go through the MP3 tweaking the gain value in all the frames.  What you are asking to do is recalculate the actual waveforms, so first you would need to obtain the waveforms...
It's your privilege to disagree, but that doesn't make you right and me wrong.

Re: Making MP3's sound more stereo

Reply #16
Looks like you didn't understand my problem. I'm satisfied with the sound of 11025Hz 32kbps stereo MP3. But, my source files have a narrow stereo width. Joint stereo never reduces the stereo width.

Then widen the stereo image before encoding instead of trying to do it after encoding.

That's a good idea, thanks.

Re: Making MP3's sound more stereo

Reply #17
Although widening the stereo image before encoding is a good solution, I still wonder why just increasing the gain property of the side channel is not enough to widen the stereo image. @fooball Just for wonder: why widening the stereo image requires recalculating the actual waveforms even with joint stereo?

Re: Making MP3's sound more stereo

Reply #18
If MP3's version of joint stereo is to encode L+R and L-R, then yes it seems like increasing the gain on the L-R channel would indeed widen the stereo image.  However, how are you going to tell the decoder that the L-R channel needs amplifying more than the L+R channel?  Each frame has a gain attribute, but I'm not sure it has a per-channel gain attribute.

Joint stereo encoding might not be just L+R and L-R, it might be doing something more complex than that to extract commonality between L and R.
It's your privilege to disagree, but that doesn't make you right and me wrong.

Re: Making MP3's sound more stereo

Reply #19
Joint stereo encoding might not be just L+R and L-R, it might be doing something more complex than that to extract commonality between L and R.
Joint stereo mode in mp3 decides for each frame, depending on the input signal, whether MS or LR is being used. Maybe the destructively low bitrates Klymins wants to use will lead to mostly MS encoded frames, but not sure.

Re: Making MP3's sound more stereo

Reply #20
Joint stereo encoding might not be just L+R and L-R, it might be doing something more complex than that to extract commonality between L and R.
Joint stereo mode in mp3 decides for each frame, depending on the input signal, whether MS or LR is being used. Maybe the destructively low bitrates Klymins wants to use will lead to mostly MS encoded frames, but not sure.

I mean making all frames joint stereo by joint stereo. I didn't know there's an assumption like this.

Re: Making MP3's sound more stereo

Reply #21
Previous threads have already given the info, so probably I'm not adding anything new, but as a kind of summary:

- MP3 format can encode in stereo, and in two modes of joint stereo.
Stereo means encoding each channel separately. Joint stereo means trying to give more bitrate to the similarities between the channels, and less to the difference.
Older Joint stereo mode is intensity stereo, which just pretends to encode some widening of the higher frequencies, while just encoding the mid.
Newer joint stereo actually is encoding two channels, one with MID signal, and the other with side signal (L+R and L-R respectively).
(I am not mentioning dual channel mode. It's a kind of stereo, which is meant to be decoded just one of them in mono, for multi-language content)

- Encoders can implement encoding in different ways.  Frauhoffer and Helix encoders support intensity stereo in low bitrates. LAME just supports midside joint stereo.
 LAME can be forced to encode all in MID/SIDE stereo or all in L/R stereo, but that is not what it does by default. By default it decides if it is better to use one or the other, frame by frame. (L+R= MID, L-R = side with sign)

- Each frame does have a gain adjustment, but as said, there is no per-channel gain adjustment, so there's no real way to amplify the "side". 


Side note:  One thing I've never really checked is... when we talk about mid/side in MP3, are we talking in the time domain or in the frequency domain? Does anyone know it exactly?

Re: Making MP3's sound more stereo

Reply #22
Previous threads have already given the info, so probably I'm not adding anything new, but as a kind of summary:

- MP3 format can encode in stereo, and in two modes of joint stereo.
Stereo means encoding each channel separately. Joint stereo means trying to give more bitrate to the similarities between the channels, and less to the difference.
Older Joint stereo mode is intensity stereo, which just pretends to encode some widening of the higher frequencies, while just encoding the mid.
Newer joint stereo actually is encoding two channels, one with MID signal, and the other with side signal (L+R and L-R respectively).
(I am not mentioning dual channel mode. It's a kind of stereo, which is meant to be decoded just one of them in mono, for multi-language content)

- Encoders can implement encoding in different ways.  Frauhoffer and Helix encoders support intensity stereo in low bitrates. LAME just supports midside joint stereo.
 LAME can be forced to encode all in MID/SIDE stereo or all in L/R stereo, but that is not what it does by default. By default it decides if it is better to use one or the other, frame by frame. (L+R= MID, L-R = side with sign)

- Each frame does have a gain adjustment, but as said, there is no per-channel gain adjustment, so there's no real way to amplify the "side". 


Side note:  One thing I've never really checked is... when we talk about mid/side in MP3, are we talking in the time domain or in the frequency domain? Does anyone know it exactly?

Thanks, I think MP3 works in frequency domain.

Re: Making MP3's sound more stereo

Reply #23
Side note:  One thing I've never really checked is... when we talk about mid/side in MP3, are we talking in the time domain or in the frequency domain? Does anyone know it exactly?
Frequency domain. It's mathematically equivalent to time domain if you're doing the same mid/side transform on all frequencies, but MP3 allows switching between mid/side and intensity stereo.

Re: Making MP3's sound more stereo

Reply #24
Use special VST effects such as MSED Voxengo on foobar2000
nothing special, GOGO-no-coda ~256kbps VBR + mp3packer