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: Lame 3.96 joint stereo problem? (Read 10183 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Lame 3.96 joint stereo problem?

Can someone please explain why I can not get CBR 320 stereo with Lame 3.96?
is this wrong? -c -o -b 320 -m s -h infile outfile
Thanks!

Lame 3.96 joint stereo problem?

Reply #1
Quote
Can someone please explain why I can not get CBR 320 stereo with Lame 3.96?
is this wrong? -c -o -b 320 -m s -h infile outfile
Thanks!
[a href="index.php?act=findpost&pid=299184"][{POST_SNAPBACK}][/a]


You may want to try --preset insane. Please read the FAQ. A lot of codecs use Joint
stereo to make better use of the avalible bits.

For just stereo this might work

-b 320 -m s

or

--preset insane -m s

Regards
N
Death is the one thing we all face

Lame 3.96 joint stereo problem?

Reply #2
Thanks on reply N! I have already read FAQ, and didn't find the answer. Problem is that i must use command line, not presets, and this which I written in first post should be working. But it doesn't! Any other idea to try?

Lame 3.96 joint stereo problem?

Reply #3
Quote
Thanks on reply N! I have already read FAQ, and didn't find the answer. Problem is that i must use command line, not presets, and this which I written in first post should be working. But it doesn't! Any other idea to try?
[a href="index.php?act=findpost&pid=299194"][{POST_SNAPBACK}][/a]
Why can't you use the presets?  -b320 is --preset in LAME 3.96.  Joint stereo makes better use of its bit allocation but if you must have simple L/R stereo then

-b 320 -m s
Nero AAC 1.5.1.0: -q0.45

Lame 3.96 joint stereo problem?

Reply #4
Thanks on reply Dream-, but as I pointed out before I use those one and can not get simple(plain) L/R stereo. Joint stereo is definetly not recommended for proffesional broadcast use.
Joint stereo is a method to save some bandwidth by encoding certain parts of the spectrum in mono (i.e. only once) for which the human ear has no directional hearing. These are very low and very high tones. This works very well and produces excellent quality at 128 Kbit/s for most pieces of music. However, there is one drawback. Some music contains sounds that are deliberately delayed or phase shifted. Such effect boxes are called "flanger", "phaser" and the like. If you encode such music in joint stereo, you will have bad cancelling effects where the high tones appear and disappear all the time, destroying the good original sound.

Lame 3.96 joint stereo problem?

Reply #5
Could you provide some short samples that are ABXable with 320 kbps joint stereo (lame) but not without JS? Lame joint stereo encoding mode is known to be safe and secure, without bug, and to my knowledge nobody has submit problem samples. Joint Stereo issues are another story with some fraunhofer encoders (see here). But definitevely not lame.

(sorry if it doesn't answer to your original question).
Wavpack Hybrid: one encoder for all scenarios
WavPack -c4.5hx6 (44100Hz & 48000Hz) ≈ 390 kbps + correction file
WavPack -c4hx6 (96000Hz) ≈ 768 kbps + correction file
WavPack -h (SACD & DSD) ≈ 2400 kbps at 2.8224 MHz

Lame 3.96 joint stereo problem?

Reply #6
Quote
Joint stereo is a method to save some bandwidth by encoding certain parts of the spectrum in mono (i.e. only once) for which the human ear has no directional hearing. These are very low and very high tones.
[a href="index.php?act=findpost&pid=299206"][{POST_SNAPBACK}][/a]

I thought that what joint-stereo does is only encode one channel, and additionally save the *difference* between both channels. This is far from mono. Also, joint-stereo is not restricted to the above mode - it can switch between the "joint"-mode and the L/R mode on the fly. This means, that if for example you do have a very difficult part in the music for which 320kbit is not enough, but the stereofield isn't very complex, then the encoder can switch to JS for this part of the song, saving some bits which can be used to encode the difficult part at higher quality. What this essentially means, is that JS gives the encoder an additional method to have more available bandwidth to spent on music - so, unless an encoders JS-implementation is buggy or suboptimal (i.e. Fraunhofer) joint-stereo results in higher quality than stereo.
So, with an encoder which has a good JS-implementation, you *loose* quality by limiting the encoder to stereo-only.

This is why JS is the default setting. Because it should result in higher quality/lower filesize. There have even been calls for removing the stereo-switch from lame, because most people dont understand this. Its probably the most misused switch in lame.

There is also an entry in the FAQ which explains just that. Thats the reason why people pointed to you towards the FAQ in the beginning of the thread.

- Lyx
I am arrogant and I can afford it because I deliver.

Lame 3.96 joint stereo problem?

Reply #7
Quote
Thanks on reply Dream-, but as I pointed out before I use those one and can not get simple(plain) L/R stereo. Joint stereo is definetly not recommended for proffesional broadcast use.
Joint stereo is a method to save some bandwidth by encoding certain parts of the spectrum in mono (i.e. only once) for which the human ear has no directional hearing. These are very low and very high tones. This works very well and produces excellent quality at 128 Kbit/s for most pieces of music. However, there is one drawback. Some music contains sounds that are deliberately delayed or phase shifted. Such effect boxes are called "flanger", "phaser" and the like. If you encode such music in joint stereo, you will have bad cancelling effects where the high tones appear and disappear all the time, destroying the good original sound.
[a href="index.php?act=findpost&pid=299206"][{POST_SNAPBACK}][/a]
OK I see what your current confusion is about.  You're not thinking of the same type of joint stereo I am.  The form you are talking about that can destroy phase information is intensity stereo.  LAME doens't have an intensity stereo implementation.  LAME's joint stereo switches between L/R and M/S frames on a frame to frame basis depending on which one will yield the best compression.  The L/R -> M/S transform is lossless so there is no danger in it.  At least no one's managed to find any major bugs in the long time LAME has been developed.

Short answer is that LAME's joint stereo mode is safe.  Anyhow at 320k CBR the encoder's going to use mostly L/R frames to fill up the frames and use very few M/S frames, but don't you think it's a better idea to let the encoder decide what will be better?
Nero AAC 1.5.1.0: -q0.45

Lame 3.96 joint stereo problem?

Reply #8
Quote
Joint stereo is a method to save some bandwidth by encoding certain parts of the spectrum in mono (i.e. only once) for which the human ear has no directional hearing.

This is Intensity Stereo (IS), which is a kind of joint stereo.
However, Lame doesn't implement this kind of joint stereo.

Lame 3.96 joint stereo problem?

Reply #9
Thanks to all, specially Gabriel! But guys, you must understand that original production must be intact, and this is not a matter of 'bug' in lame js. Maybe some of you think that lame js is best solution, but removing stereo from lame could be big mistake. So i can not allow lame (which I think is definetly best in the world) to change ANY part of original sound. Original recording is copyrighted, and must be encoded without any changes. I hope that this fact is clear to all of you now.

Lame 3.96 joint stereo problem?

Reply #10
Quote
So i can not allow lame (which I think is definetly best in the world) to change ANY part of original sound. Original recording is copyrighted, and must be encoded without any changes. I hope that this fact is clear to all of you now.
[a href="index.php?act=findpost&pid=299289"][{POST_SNAPBACK}][/a]

LOL, I hope the fact is clear to you that MP3 is lossy, so there will be lots of changes (albeit usually not audible) with your original recording, as whole truckloads of data are thrown away during encoding, irrespective of bitrate, stereo mode or whatever. You really need to use a lossless encoder like FLAC or Wavepack to keep all data of the original. By the way, all lossless encoders also make use of joint-stereo techniques to save bits, so what does this tell you about letting Lame use joint stereo?
Proverb for Paranoids: "If they can get you asking the wrong questions, they don't have to worry about answers."
-T. Pynchon (Gravity's Rainbow)

Lame 3.96 joint stereo problem?

Reply #11
Quote
Thanks to all, specially Gabriel! But guys, you must understand that original production must be intact, and this is not a matter of 'bug' in lame js. Maybe some of you think that lame js is best solution, but removing stereo from lame could be big mistake. So i can not allow lame (which I think is definetly best in the world) to change ANY part of original sound. Original recording is copyrighted, and must be encoded without any changes. I hope that this fact is clear to all of you now.
[a href="index.php?act=findpost&pid=299289"][{POST_SNAPBACK}][/a]


haha!

If it can't be encoded without any changes, how can you use mp3 in the first place? And for the 50th time, joint stereo doesn't break the stereo or damage the audio. It's just another technique the PE uses to get more true-to-original sound.

Lame 3.96 joint stereo problem?

Reply #12
Quote
Thanks to all, specially Gabriel! But guys, you must understand that original production must be intact, and this is not a matter of 'bug' in lame js. Maybe some of you think that lame js is best solution, but removing stereo from lame could be big mistake.
[a href="index.php?act=findpost&pid=299289"][{POST_SNAPBACK}][/a]


Just face it ... LAME joint stereo is based on M/S encoding and thus (apart from negligible rounding errors) is a lossless process ... if you are afraid that applying effects like flanging will lead to cancelling effects, you'll have to make sure processing is applied after decoding.
The name was Plex The Ripper, not Jack The Ripper

Lame 3.96 joint stereo problem?

Reply #13
While m/s can be used opportunisticaly to increase encoding efficiency and therefore overall combined track quality, there was a thread here which demonstrated how in one case it resulted in more loss in the stereo image than independant channel stereo (when the stereo image is very faint)
The unavoidable lossyness of mp3 encoding, requires compromises to be spread through all available areas - and when independant stereo is used, although the overall encoding suffers from the loss of an option (m/s notation) - the stereo image is left out of the loss distribution and suffers instead from uncorrelated differences between the encoded channels.

The command line switch for discouraging m/s encoding in joint stereo is --nsmsfix #  where '#' is a value 0.1 to about ~5.
It can be used safely with vbr presets but could damage cbr and abr,
--nsmsfix 1, is about the level of preset extreme, anything around 0.5 will result in almost no m/s frames -virtualy fully independant channel encoding.

It can be used if mp3s are high bitrate and likely to be played back with post processing like surround or 5.1 stereo.

I personaly never use this switch, as the level has been set by Lame developement and testing better than i could judge on my own.


hth
no conscience > no custom

Lame 3.96 joint stereo problem?

Reply #14
Troll?
I am arrogant and I can afford it because I deliver.

Lame 3.96 joint stereo problem?

Reply #15
Quote
Thanks to all, specially Gabriel! But guys, you must understand that original production must be intact, and this is not a matter of 'bug' in lame js. Maybe some of you think that lame js is best solution, but removing stereo from lame could be big mistake. So i can not allow lame (which I think is definetly best in the world) to change ANY part of original sound. Original recording is copyrighted, and must be encoded without any changes. I hope that this fact is clear to all of you now.
[a href="index.php?act=findpost&pid=299289"][{POST_SNAPBACK}][/a]


Sounds like you need lossless, not MP3. 

If you are do keep using MP3, remember that screwing around with the encoder when you do not understand how it works tends to be a very lossy process

Lame 3.96 joint stereo problem?

Reply #16
Quote
Troll?

Theres no need for confrontation. This is just my considered understanding of js which I have taken from previous enquirys. JS is tuned optimaly for normal playback with no doubt some headroom for most playback, but nsmsfix can be lowered to favour the stereo image for special stereo playback post processing at the expense of bitrate or overall quality. Thats how I see it works. To say that js encoding mode doesnt effect the stereo image is disingenuous imho. It effects it an amount tuned to be neglible while saving bits.
The lossless relationship between L/R and M/S is superceeded when the different notations are lossily encoded. Quoting the lossless relationship between the two is no explaination of JS modes advantage.
no conscience > no custom

Lame 3.96 joint stereo problem?

Reply #17
This was not meant towards you ChiGung, but towards the threadstarter. Sorry, i should have made that more clear.

- Lyx
I am arrogant and I can afford it because I deliver.

Lame 3.96 joint stereo problem?

Reply #18
Quote
This was not meant towards you ChiGung, but towards the threadstarter.

Hehe - phew, I wasnt looking forward to it - you know I can be a real windbag
no conscience > no custom

Lame 3.96 joint stereo problem?

Reply #19
joint stereo IS lossy .. at least to "spoony DSPs" as some put it. it all depends on how the equipment treats the audio. 95% of uses and users out there should be fine with JS, just not me. 95% consider it a waste and it might very well be, but i'd prefer to be able to use a DSP to "fake surround" channels if and when i get a setup for 4.0/4.1/5.1 again than to put up with borked-up sounding JS files for a mere 2-4% savings in filesize.

as for the original poster's question, i haven't really heard of -c or -o (is -o output filename/path? i wouldn't know; i just use a drag and drop encoder). i also don't see why you can't use a preset... they're the most tuned to that bitrate.

Lame 3.96 joint stereo problem?

Reply #20
Quote
joint stereo IS lossy .. at least to "spoony DSPs" as some put it. it all depends on how the equipment treats the audio. 95% of uses and users out there should be fine with JS, just not me. 95% consider it a waste and it might very well be, but i'd prefer to be able to use a DSP to "fake surround" channels if and when i get a setup for 4.0/4.1/5.1 again than to put up with borked-up sounding JS files for a mere 2-4% savings in filesize.
[a href="index.php?act=findpost&pid=299381"][{POST_SNAPBACK}][/a]

I think you might be better off using nsmsfix then. Stereo mode is functionaly equivalent to J/S stereo mode using nsmsfix of 0, 0.1to0.5 will only use M/S frames when most accutely efficient. There will be levels of stereo inseparation when L/R encoding is wasting almost 50% of the bits and if the music is complex that could really degrade it. You should get better returns by lowering nsmsfix, between 0.5 to 1.0 if you want a 'pure stereo like' result while still keeping the most obvious boosts to efficiency.
no conscience > no custom

Lame 3.96 joint stereo problem?

Reply #21
Quote
I think you might be better off using nsmsfix then. Stereo mode is functionaly equivalent to J/S stereo mode using nsmsfix of 0, 0.1to0.5 will only use M/S frames when most accutely efficient. There will be levels of stereo inseparation when L/R encoding is wasting almost 50% of the bits and if the music is complex that could really degrade it. You should get better returns by lowering nsmsfix, between 0.5 to 1.0 if you want a 'pure stereo like' result while still keeping the most obvious boosts to efficiency.
[a href="index.php?act=findpost&pid=299382"][{POST_SNAPBACK}][/a]


tried that. the DSP flanges or drops out in the surround until you get nsmsfix around 0.3 to 0.2, at which point it's encoding 99, if not 100% stereo frames anyways.

Lame 3.96 joint stereo problem?

Reply #22
Quote
Quote
I think you might be better off using nsmsfix then. Stereo mode is functionaly equivalent to J/S stereo mode using nsmsfix of 0, 0.1to0.5 will only use M/S frames when most accutely efficient. There will be levels of stereo inseparation when L/R encoding is wasting almost 50% of the bits and if the music is complex that could really degrade it. You should get better returns by lowering nsmsfix, between 0.5 to 1.0 if you want a 'pure stereo like' result while still keeping the most obvious boosts to efficiency.
[a href="index.php?act=findpost&pid=299382"][{POST_SNAPBACK}][/a]


tried that. the DSP flanges or drops out in the surround until you get nsmsfix around 0.3 to 0.2, at which point it's encoding 99, if not 100% stereo frames anyways.
[a href="index.php?act=findpost&pid=299385"][{POST_SNAPBACK}][/a]

But if your your playback is so extreme and hearing so accute, you should be able to hear more artifacts from each of the channels effectively being limited to 160kbs - that should be the biggest problem with not allowing any M/S blocks. If you got really complex but similar sound in both channels, itll need half the max bitrate for each, with M/S Mid can use more than 160 and S less -if the difference is small... I dunno.
no conscience > no custom

Lame 3.96 joint stereo problem?

Reply #23
Quote
But if your your playback is so extreme and hearing so accute, you should be able to hear more artifacts from each of the channels effectively being limited to 160kbs - that should be the biggest problem with not allowing any M/S blocks. If you got really complex but similar sound in both channels, itll need half the max bitrate for each, with M/S Mid can use more than 160 and S less -if the difference is small... I dunno.
[a href="index.php?act=findpost&pid=299386"][{POST_SNAPBACK}][/a]


either way, i'm stuck in my ways, and 95% of everyone else is stuck in theirs. just voicing my choice since it differs from the norm...

Lame 3.96 joint stereo problem?

Reply #24
Quote
joint stereo IS lossy .. at least to "spoony DSPs" as some put it. it all depends on how the equipment treats the audio. 95% of uses and users out there should be fine with JS, just not me. 95% consider it a waste and it might very well be, but i'd prefer to be able to use a DSP to "fake surround" channels if and when i get a setup for 4.0/4.1/5.1 again than to put up with borked-up sounding JS files for a mere 2-4% savings in filesize.


Edit: Ok, I admit, I'm a big mouthed idiot that didn't sufficiently think about nor read the original post carefully enough before posting.