Help - Search - Members - Calendar
Full Version: problems with --ns-sfb21 in 3.95
Hydrogenaudio Forums > Lossy Audio Compression > MP3 > MP3 - General
mlb2gm5x
Hello,

does --ns-sfb21 switch work in LAME 3.95? I've been trying to encode with -V8 -q0 --ns-sfb21 -4 --lowpass 19.5, but it doesn't seem to work. I have no problems with LAME 3.93.1. And please don't bash me for using this command line unsure.gif.

Thank you in advance
Gabriel
--ns-sfb21 works, but is useless if you are not using sfb21.

I'd suggest you to try something like "lame -V5" with 3.95 instead of your command line.
mlb2gm5x
Thank you. I thought that it works in 3.93, because I could hear more high frequencies for the same -V, but I didn't realize that the bitrate was higher. But I've done some other tests and I've noticed that 3.95 -V6 gives approximately the same bitrate as 3.93.1 -V9. But I was unpleasantly surprised when I still could hear more high frequencies when I was listening to file produced by older LAME. Command line was:
for 3.95: -V6 -q0 --lowpass 19.5 file.wav
for 3.93.1: -V9 -q0 --lowpass 19.5 file.wav
Is there any setting for the new lame that could save more high frequencies?
treech
I'm gonna say what everybody else reading this is thinking, USE THE PRESETS!
boojum
QUOTE(treech @ Jan 11 2004, 07:58 AM)
I'm gonna say what everybody else reading this is thinking, USE THE PRESETS!

Hello! cool.gif
mlb2gm5x
QUOTE(treech @ Jan 11 2004, 07:58 AM)
I'm gonna say what everybody else reading this is thinking, USE THE PRESETS!

Unfortunately I cannot, because I want to play mp3 files on my portable and battery life is very important to me, same as high frequencies. Higher bitrates = higher power consumption = less files on cd.
eltoder
QUOTE(mlb2gm5x @ Jan 11 2004, 10:20 PM)
QUOTE(treech @ Jan 11 2004, 07:58 AM)
I'm gonna say what everybody else reading this is thinking, USE THE PRESETS!

Unfortunately I cannot, because I want to play mp3 files on my portable and battery life is very important to me, same as high frequencies. Higher bitrates = higher power consumption = less files on cd.

How about --preset medium?
And just FYI, in 3.95 everything is mapped to presets.

-Eugene
mlb2gm5x
QUOTE(eltoder @ Jan 11 2004, 09:28 AM)
How about --preset medium?
And just FYI, in 3.95 everything is mapped to presets.

-Eugene

The bitrate is still too high (159 kbps comparing to 127) and high frequencies are also lost sad.gif. Please note, that the highest quality is not my priority.
pacohaas
QUOTE(mlb2gm5x @ Jan 11 2004, 10:42 AM)
Please note, that the highest quality is not my priority.

in that case, use --preset 128 or some other ABR bitrate. or, as they have said, with 3.95, each -V value is mapped to a supposed optimal command-line, so tweaking it further with --lowpass will only worsen the quality. Try different -V values and see which gives you the bitrates you are looking for.
takehiro
QUOTE(Gabriel @ Jan 11 2004, 10:09 PM)
--ns-sfb21 works, but is useless if you are not using sfb21.

I'd suggest you to try something like "lame -V5" with 3.95 instead of your command line.

after LAME3.94b, it changes lowpass values when you use the -V n switch.

If you want to keep higher frequency, you need to use lower "-V n" option like -V 5 as Gaby said, or specify the lowpass value explicitly(--lowpass 18 or so).
Fr4nz
QUOTE(mlb2gm5x @ Jan 11 2004, 09:42 AM)
QUOTE(eltoder @ Jan 11 2004, 09:28 AM)
How about --preset medium?
And just FYI, in 3.95 everything is mapped to presets.

-Eugene

The bitrate is still too high (159 kbps comparing to 127) and high frequencies are also lost sad.gif. Please note, that the highest quality is not my priority.

You have to use --alt preset 128. You cannot pretend to have high frequencies at THIS bitrate anyway, because it would give you a lot of artifacts.
fairyliquidizer
AT that bit rate you don't have enough bits to cover the frequency range. I am not personally opposed to people finding there own command lines and experimenting as we are all individuals and whilest the presets are good for most they aren't right for all situations and people. That said to return to my point you want about 192kbps if you want a good frequency range, or at the very least 160 kbps. Personally I'd start with the abr presets or preset medium even if you must modify the preset.

Cheers,
Fairy
mlb2gm5x
Hi, it's me again rolleyes.gif
First of all thank you for your answers, although I had to search for the problem myself wink.gif.
So - after few hours of learning how to use cvs, downloading sources from the repository, compiling and testing different lame versions I've managed to find out what's the source of my lack-of-hf-problems (hopefully). It's the psfb21_analogsilence function which cuts off my mp3s (even with api!) that much. Please comment out "psfb21_analogsilence(gfp, gfc, cod_info);" in quantize.c and (if you are able to hear frequencies > 16kHz) you will hear the difference.
Can anybody confirm my suspicion?
I would also like to say that I don't know anything about LAME. But I just hope I'm not some kind of idiot who wastes his time for nothing smile.gif.
ViPER1313
If you want high frequencies, use the Blade MP3 encoder - it will make the pretty spectrum view pictures in Nero WAV Editor that you crave so much. If you care about quality at low bitrates though, just use --preset 128 and quit !#*$I^@ with the Lame source code mad.gif headbang.gif !!!

You are not going to get any developers to fix this "problem" because it's not a problem - its a FEATURE. You don't want to keep high frequencies at low bitrates because it does way more harm than good quality wise. Unless you post a 30sec sound clip here that sounds better w/ your whacked out version of Lame and your whacked out command line, just take my advise and use --preset 128.

I'm not trying to be mean, it's just that so much effort has been put into optimizing Lame and it's presets it's almost pointless to come up with a home brewed command line, much less a modified version of Lame. About 5 people a week come up with a new 1337 command line that they swear is the best out there, but when asked to do a blind listening test, they fail to come back and give their results. I hope you learn some stuff at HA.org, just don't try to fight against standards that have been set by the community unless you have proof (a 30sec test clip and ABX results) that it really does sound and work better.
mlb2gm5x
QUOTE
If you want high frequencies, use the Blade MP3 encoder - it will make the pretty spectrum view pictures in Nero WAV Editor that you crave so much.

I've downloaded Blade (even two versions) from ReallyRareWares, but I couldn't see a full spectrum @128 kbps. Quality was also poor. Somebody must be blind here.
QUOTE
If you care about quality at low bitrates though, just use --preset 128 and quit !#*$I^@ with the Lame source code mad.gif headbang.gif !!!

Nobody forces you to use my version. Is the LAME source some kind of sanctity? The purpose of that post was different. You obviously didn't read my posts carefully.
QUOTE
You are not going to get any developers to fix this "problem" because it's not a problem - its a FEATURE. You don't want to keep high frequencies at low bitrates because it does way more harm than good quality wise.

Is lower lowpassing really a "feature"? Please read at least the function's name. Btw - it wasn't present in 3.93.1 and somehow nobody was complaining. And why does this "feature" affect all bitrates?
QUOTE
Unless you post a 30sec sound clip here that sounds better w/ your whacked out version of Lame and your whacked out command line, just take my advise and use --preset 128.

I would like to, but I don't know how. But I wonder if it makes any sense to do it. When I look at the winner of 128kbps test I'm getting a strange feeling that it's participants were 50 years and older.
QUOTE
I'm not trying to be mean, it's just that so much effort has been put into optimizing Lame and it's presets it's almost pointless to come up with a home brewed command line, much less a modified version of Lame.

Well, you were mean. And I'm sure you didn't even try to encode anything with this "whacked out version of Lame". Function that I've removed had appeared in 3.94alpha (or beta). Are you sure it's been thoroughly tested and optimized?
QUOTE
About 5 people a week come up with a new 1337 command line that they swear is the best out there, but when asked to do a blind listening test, they fail to come back and give their results. I hope you learn some stuff at HA.org, just don't try to fight against standards that have been set by the community unless you have proof (a 30sec test clip and ABX results) that it really does sound and work better.

Was I saying anything about best command line or LAME version? And what should I ABX for? Does it really make sense to ABX a 123kbps mp3 and original? I'm only trying to get the best "impression" of music at low bitrate for a portable mp3 player. Is it really so hard to understand? Standards you are talking about not always suit everyone's needs. I listen to music for pleasure, not for finding artifacts. Artifacts can be annoying, but I'm searching for a reasonable compromise.
QUOTE
About 5 people a week come up with a new 1337 command line that they swear is the best out there, but when asked to do a blind listening test, they fail to come back and give their results. I hope you learn some stuff at HA.org, just don't try to fight against standards that have been set by the community unless you have proof (a 30sec test clip and ABX results) that it really does sound and work better.

I'm not saying that the modification I've applied is better than original. It just sounds different (better to me), so I shared my observations. Does it really deserve for condemnation?

I've done 4 ABX tests:
1. LAME 3.95.1 (--alt-preset insane) vs original: 18/21
2. LAME 3.95.1 (--alt-preset insane -k) vs original: 20/21
3. modified LAME 3.95.1 (--alt-preset insane -k) vs original: 19/21
these three were hard to ABX, but unfortunately - I eventually could do it (so I can't say that this mod helped)
4. LAME 3.95.1 (-q0 -V7 -k) vs modified LAME 3.95.1 (-q0 -V7 -k): 21/21
modified version produces about 1kbps higher bitrate (123/124).
this one was easier to ABX and mod gave better >impression<

If I see another bashing because of non-standard command line I'll leave this forum. I don't want to write where nobody reads or be where nobody wants me to be.

If psfb21_analogsilence really works fine - I would only like to suggest a switch that could disable it.

Excuse my English, it's not my native language.

Thank you for reading.
eltoder
QUOTE(mlb2gm5x @ Jan 24 2004, 12:15 AM)
Is lower lowpassing really a "feature"? Please read at least the function's name. Btw - it wasn't present in 3.93.1 and somehow nobody was complaining. And why does this "feature" affect all bitrates?

Function that I've removed had appeared in 3.94alpha (or beta). Are you sure it's been thoroughly tested and optimized?

Indeed, it's a new addition.

QUOTE(Lame Changlelog)
LAME 3.94 beta December 15 2003
Gabriel Bouvigne:
- analog silence detection in partitionned sfb21
Cyaneyes
I'll refrain from criticizing your command line.. but could you please explain your reasoning behind wanting to retain high frequencies when doing so will result in a poorer sounding mp3?

Even alt preset insane lowpasses at 20.5 khz.
mlb2gm5x
QUOTE
I'll refrain from criticizing your command line..

Thank you smile.gif

IMO these mp3 do not sound very poor (have you tried this command line?), at least not to my ears. My ears also fail to find a better sounding mp3 at that bitrate.
For me quality does not only refer to amount of artifacts but also to the bandwidth. And, because I'm quite young I have the ability to hear higher frequencies, which I find very pleasant wink.gif.
gazzyk1ns
First of all - you speak very good English considering it's not your native language.

But... I think there is a bit of naivety here on your part. I don't like saying that to anyone and I'm not one of those posters who just likes to put people down when they're using "non-standard" features just to make myself sound knowledgeable.

It's just that after a while of being here you come to realise that most people who participate in the listening tests have excellent hearing... and maybe more to the point, they are trained well in detecting the artifacts which MP3 encoding can produce.

People won't take you seriously if you say things like "Oh well I can just hear more high frequencies than most people" without providing evidence, and if I'm being honest with you (I really don't mean this to sound rude), I don't believe you either. I don't think you mean any offence or deliberate lies, but as I said at the beginning, I think the fact that you're young would indicate more here that you're a little naive to LAME, and the knowledge of people here. If you're wondering if I'm some old man being jealous of your youth, then don't worry - I'm 22.

In realistic terms, you can pay less attention to the figures quoted for the lowpasses of the VBR presets, read this thread, specifically Dibrom's post on Feb 13 2002, 11:05 AM.

I believe you when you say that your command line "doesn't sound very poor", I bet they sound "fine". LAME is so good these days that at most bitrates above about 160, you'll have to work hard to really mess things up and produce nasty artifacts audible in everyday listening. What everyone is simply trying to tell you is that settings already exist which are proven to be the_best for use with those compiles of LAME.

EDIT: Just re-read your original post, and I see you're requiring fairly low bitrates, so that bit about the lowpasses of the VBR presets might be a little irrelevant.
MugFunky
hmm. the sfb21 thing is a limitation of mp3 as a whole. the highest band (16k+) has no scalefactor of it's own, meaning to get anywhere near the same precision as the lower bands it needs to rob HUGE amounts of bitrate from them (up to 30kbps). this is why lowpassing is used for lower rates that can't spare that much (think about 128kbps - 30kbps... ouch).

also, if the 16k+ band is not there (or flicks in and out) you probably wont notice even with young ears (i'm 21)... there's so much going on in music that the brain doesn't have room for a full spectrum. if you're engrossed in a good movie, you probably wont notice the 15625/15734 Hz pilot tone on your TV even though you're quite capable of hearing it normally.

i don't discourage you from playing with the commandline... it's a good way to learn what's going on in there... but i doubt you'll find better than the presets in the 128kbps+ range. i wouldn't be playing with the LAME sources because i'm not a programmer, but hell, there's plenty to be learnt there as well.

this forum is kinda hostile toward tinkering because it's seen LAME developing with it. listening tests done here directly contribute to the development of LAME.

but that said, i've found commandlines myself that give more "pleasing" sound at very low bitrate (i like to see how far i can push lame before it breaks... so i'm talking 96kbps and below) than --alt-preset CBR 96... of course the disadvantage is that if you feed it a different song you have to change the settings... hehehe. at low bitrates there's no ideal really, so have fun...
(i never ABX low bitrate encodes as the differences are so obvious there's no point. at this rate you're aiming to hide obvious artefacts rather than get transparency.)
Gabriel
QUOTE
I've downloaded Blade (even two versions) from ReallyRareWares, but I couldn't see a full spectrum @128 kbps. Quality was also poor. Somebody must be blind here.
hudson
Pardon me jumping in, but from a cursory reading of the thread, the real point seems to have been missed amongst terminology and discussion of the value (or lack of) of preserving high frequencies. The only real finding here is that by removing the psfb21_analogsilence function, the original poster claims to have received a more pleasing result.

It might be worthwhile to simply look into what this function does and if it has any negative consequences.

Just my 2c.

H
Mike Giacomelli
QUOTE
I've done 4 ABX tests:
1. LAME 3.95.1 (--alt-preset insane) vs original: 18/21
2. LAME 3.95.1 (--alt-preset insane -k) vs original: 20/21
3. modified LAME 3.95.1 (--alt-preset insane -k) vs original: 19/21
these three were hard to ABX, but unfortunately - I eventually could do it (so I can't say that this mod helped)
4. LAME 3.95.1 (-q0 -V7 -k) vs modified LAME 3.95.1 (-q0 -V7 -k): 21/21


Thats quite impressive. Would you please post the sample so i can try it as well?
Moguta
QUOTE(Mike Giacomelli @ Jan 25 2004, 09:15 PM)
QUOTE

I've done 4 ABX tests:
1. LAME 3.95.1 (--alt-preset insane) vs original: 18/21
2. LAME 3.95.1 (--alt-preset insane -k) vs original: 20/21
3. modified LAME 3.95.1 (--alt-preset insane -k) vs original: 19/21
these three were hard to ABX, but unfortunately - I eventually could do it (so I can't say that this mod helped)
4. LAME 3.95.1 (-q0 -V7 -k) vs modified LAME 3.95.1 (-q0 -V7 -k): 21/21


Thats quite impressive. Would you please post the sample so i can try it as well?

I second that request.
We need samples to work from here.
mlb2gm5x
Hello,
thank you for your kind posts.

MugFunky:
I'm 19. And yes, I can hear the pilot tone very clearly. I also agree that if I'm engrossed in a good movie I won't notice it. But I also pay less attention to artifacts when I'm listening to good music smile.gif. Afaik LAME doesn't encode hf constantly (at low bitrates with -k switch) but only when they are quite noticeable (although I don't know if it is true).

QUOTE
QUOTE
I've downloaded Blade (even two versions) from ReallyRareWares, but I couldn't see a full spectrum @128 kbps. Quality was also poor. Somebody must be blind here.

Sorry, but I don't understand what you are trying to say. What's wrong with this statement? Could you please write something about this function? Does it work like it should (=am I stupid smile.gif)?

Sorry not for posting the sample with my previous post. All the servers I knew were restricted in many ways. I've finally uploaded this file to the lycos server. Is it all right to post a 16 second sample?
http://members.lycos.co.uk/mlb2gm5x/sample.flac

It may be very hard to abx. The difference occurs somewhere around 9th second. The original one "irritates" (?) my ears (especially the left one). I've been using Koss CD/4 headphones (are they any good?) and SB Audigy soundcard (+foobar's SSRC resampler @48000 Hz).

Now I begin to wonder if api encoding problem of this sample is relevant to the topic or if it really relates to high frequencies... sad.gif
Anyway, the "impression" difference should be clear here (at least it is for me).

I'm starting to feel guilty for starting this thread. I will definitely feel so if it turns out that I'm wrong crying.gif.
tigre
mlb2gm5x, a 16 seconds sample is alright.

Some things about performing abx tests properly:
  • With your card, resampling is a good idea indeed. Either decode to 48kHz wavs and use them for ABXing or enable use of DSPs for ABXing with foobar and ABX with resampler DSP active.
  • The sample is loud and clips when encoded to mp3 -> decoded and/or when resampled. So use replaygain (track gain) for decoding to .wav (if you use something like ABC/HR for abxing) or enable replaygain for ABXing with foobar2000.
Otherwise things like distortion caused by clipping will spoil your results.

It's possible that you find a command line or a source code modification that sounds better to your ears on one sample (or even on several samples of similar music style), but overall the problem with using -k or a too high lowpass at low bitrates like 128kbps is this:

In music most content > 16kHz is inaudible or masked by < 16kHz content, but in comparison need much more space to be encoded. The difference between a 16kHz and a 20kHz lowpass can be very well audible in many cases, but to me - and probably many others - a lower lowpass sounds much better than artifacts like ringing, pre-echo, 'underwater sound'. With a too high lowpass the occurance of such artifacts is more likely at ~ 128bkps bitrate. Maybe the music you're listening to has less problems like this than others, but I recommend doing more testing before coming to a conclusion.

The recommended lame settings (with recommended lame version 3.90.3), e.g. --alt-preset 128 (17.5kHz lowpass) are recommended because many people invested lots of time to find widely accepted compromises e.g. between lowpass and artifacts.

You might want to try what lowpass you can hear at all on the music you're listening to. Use a wave editor to apply different lowpasses to samples and try to ABX them. You may be surprised about the result.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2008 Invision Power Services, Inc.