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: Disable -Y? (Read 10616 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Disable -Y?

Since -Y is used for VBR presets higher than V2, is there a switch to disable it? Max bitrate, lowpass freq, etc can be overridden, but I don't see any switches to turn off -Y. Why? I want to see how much larger the filesize can be, let's say, at -V4 with/without -Y.
twitter.com/pika2000

Disable -Y?

Reply #1
Good question, but this doesn't belong on MPC - Tech.
we was young an' full of beans

Disable -Y?

Reply #2
Wooops! Sorry, just realised that. I accidentally clicked the MPC tech instead of MP3 Tech. Mods, can you move the post please? Sorry.
twitter.com/pika2000

Disable -Y?

Reply #3
-Y is an on/off switch. If -Y is by default "on" in a preset, adding -Y to the commandline will turn it off. If -Y is "off" in a preset, adding -Y to the commandline will turn it on.

AFAIK, -Y is similar to using a 16kHz lowpass. I think what it actually does is disables ScaleFactor Band 21 (sfb which corresponds to >16kHz freq content).

Disable -Y?

Reply #4
omg.. why didn't I think of trying that 

::goes off to do some testing::
Vorbis-q0-lowpass99
lame3.93.1-q5-V9-k-nspsytune

Disable -Y?

Reply #5
Quote
-Y is an on/off switch. If -Y is by default "on" in a preset, adding -Y to the commandline will turn it off. If -Y is "off" in a preset, adding -Y to the commandline will turn it on.

NO that does NOT work!!

lame 3.97b2
-k -V 3
-k -Y -V 3
the resulting files were bit identical according to foobar's bit compare

so the question remains... How does one disable -Y ?
Vorbis-q0-lowpass99
lame3.93.1-q5-V9-k-nspsytune

Disable -Y?

Reply #6
Try placing -Y after -V 3.

Disable -Y?

Reply #7
Quote
NO that does NOT work!!
The way NeoRenegade suggested, it indeed does not.
Quote
lame 3.97b2
-k -V 3
-k -Y -V 3
the resulting files were bit identical according to foobar's bit compare

so the question remains... How does one disable -Y ?
[a href="index.php?act=findpost&pid=369055"][{POST_SNAPBACK}][/a]
If you are going to add parameters to a preset, you need to add them after it, otherwise it would override them. -Y will have no effect either way, but -k apparently will.

Disable -Y?

Reply #8
hmm... it never ocurred to me that the parameter order might matter... i'll have to play around with it later
Vorbis-q0-lowpass99
lame3.93.1-q5-V9-k-nspsytune

Disable -Y?

Reply #9
 nothing I try turns -Y off

but i did find a nice use for it with lame 3.93.1 
-k -V 9 --nspsytune --resample 44 -Y
preferable to me over using --lowpass 16, expecially for the song 'white reflection' from gundam wing which has distinct tones even up around 19khz.. and with a resulting average bitrate around 92kbps, i can't complain.. much

but as far as lame 3.94 and higher.... is there anyone who thinks that -Y is really doing much good at V 3? why not just use a 16khz lowpass? but then isnt ~170kbps a bit high for such a 'low' lowpass? so why have -Y enabled there? 

if you haven't guessed.. i don't like -Y being forced
Vorbis-q0-lowpass99
lame3.93.1-q5-V9-k-nspsytune

Disable -Y?

Reply #10
Tunings are made and proven to be well tuned.  If you're not happy, you can ALWAYS use an alpha and knock yourself out in custom commands.

Disable -Y?

Reply #11
I think that at lower than -v2 bitrates, you must use -Y to prevent artifacts. There is an old post by either gabriel or dibrom on this (some user requested 160k vbr before --preset medium came to be).
wavpack -b2.9cs.5
lame --preset cd -f

Disable -Y?

Reply #12
Quote
Tunings are made and proven to be well tuned.  If you're not happy, you can ALWAYS use an alpha and knock yourself out in custom commands.
trust me.. I am 

-Y              lets LAME ignore noise in sfb21, like in CBR

I could be wrong on this... so please correct/explain it to me...
-Y ignores the noise above 16khz... in the case of vbr, when there are loud distinct frequencies above 16khz the encoder does not allocate more bits to encode those frequencies.. the result is artifacts in the high frequencies because the bitrate was kept too low (a 16khz lowpass cuts the frequencies, -Y just doesn't take them into consideration when deciding the bitrate but still includes those frequencies in the resulting file).... this is what my tests seem to be telling me  and it's not a good thing
Vorbis-q0-lowpass99
lame3.93.1-q5-V9-k-nspsytune

Disable -Y?

Reply #13
Quote
Quote
,Mar 4 2006, 10:37 PM]Tunings are made and proven to be well tuned.  If you're not happy, you can ALWAYS use an alpha and knock yourself out in custom commands.
trust me.. I am 

-Y              lets LAME ignore noise in sfb21, like in CBR

I could be wrong on this... so please correct/explain it to me...
-Y ignores the noise above 16khz... in the case of vbr, when there are loud distinct frequencies above 16khz the encoder does not allocate more bits to encode those frequencies.. the result is artifacts in the high frequencies because the bitrate was kept too low (a 16khz lowpass cuts the frequencies, -Y just doesn't take them into consideration when deciding the bitrate but still includes those frequencies in the resulting file).... this is what my tests seem to be telling me  and it's not a good thing
[a href="index.php?act=findpost&pid=369473"][{POST_SNAPBACK}][/a]


On CD audio, energy above 16kHz is typically noise, and in general theres not much of it.  I'm sure there are examples where this isn't the case, and your music taste may predispose you towards them, but have you actually checked that this is the case?  Preferably by ABXing different lowpasses on a sample where you think this is a problem?

I've used a function generater (and confirmed with an intrumentation mic that the frequencies produced are correct), and I can hear well above 16KHz.  I still cannot ABX different lowpasses above 16k with any of my music that I've tried (though with pure tones I can).

Disable -Y?

Reply #14
Quote
On CD audio, energy above 16kHz is typically noise, and in general theres not much of it.  I'm sure there are examples where this isn't the case, and your music taste may predispose you towards them, but have you actually checked that this is the case?  Preferably by ABXing different lowpasses on a sample where you think this is a problem?

I've used a function generater (and confirmed with an intrumentation mic that the frequencies produced are correct), and I can hear well above 16KHz.  I still cannot ABX different lowpasses above 16k with any of my music that I've tried (though with pure tones I can).
for me i won't hear much above 17.5khz on some music, but will hear higher on others (techno and jpop often has somewhat important noise up there)

to illustrate the not-so-good aspect of the -Y switch...
-V 2 -Y
-V 2 --lowpass 16 (both of these came within 1kbps average for each other)
-V 2 -k (higher bitrate than the above 2)
It is best to use a sample with loud frequencies above 16khz and up to 20khz. When -Y is used, the noise above 16khz isn't taken into consideration when the bitrate (frame size) is selected, but unlike a 16khz lowpass, there will still be frequencies above 16khz in the resulting  mp3.  The use of the -Y switch prevents lame from allocating more bits when they are needed.. thus resulting is lower quality because ~20khz bandwidth is being smashed in a spaced calculated for 16khz bandwidth.
Vorbis-q0-lowpass99
lame3.93.1-q5-V9-k-nspsytune

Disable -Y?

Reply #15
But like you've already been told, it's mostly noise above 16kHz anyway. -Y allows SFB 21 to be ignored so that the >16kHz noise doesn't get any attention from the decoder and the <16kHz sound gets the attention it needs.

But I don't completely disagree with you that its not a great switch:

I prefer to lowpass my music at 16kHz. I'd rather completely eliminate HF content that I can't hear, instead of giving it a few kbps just because I might hear some of it.
I also prefer uniformity, so if some >16kHz content is cut, might as well cut it all.

Disable -Y?

Reply #16
Quote
-Y is an on/off switch. If -Y is by default "on" in a preset, adding -Y to the commandline will turn it off. If -Y is "off" in a preset, adding -Y to the commandline will turn it on.
[a href="index.php?act=findpost&pid=368389"][{POST_SNAPBACK}][/a]

Well, I tried -V3 and -V3 -Y, no difference between both. Using Nero wave editor to display the spectogram of both shows same frequency cutoff at 16kHz. I even tried using -V3 -k, although not exactly the same, the spectogram still show a definite cutoff at 16kHz. -V3 -Y -k gave the same result as -V3 -k.

So, there is no way to disable -Y then?
twitter.com/pika2000

Disable -Y?

Reply #17
Quote
Well, I tried -V3 and -V3 -Y, no difference between both. Using Nero wave editor to display the spectogram of both shows same frequency cutoff at 16kHz. I even tried using -V3 -k, although not exactly the same, the spectogram still show a definite cutoff at 16kHz. -V3 -Y -k gave the same result as -V3 -k.

So, there is no way to disable -Y then?
[a href="index.php?act=findpost&pid=372443"][{POST_SNAPBACK}][/a]


Did you check the spectogram of your "original" file? Especially since you say that -k had the same cutoff.

If the problem is not the original file, then, that specific file does require a higher -V setting.

Disable -Y?

Reply #18
Quote
But like you've already been told, it's mostly noise above 16kHz anyway. -Y allows SFB 21 to be ignored so that the >16kHz noise doesn't get any attention from the decoder and the <16kHz sound gets the attention it needs.

But I don't completely disagree with you that its not a great switch:

I prefer to lowpass my music at 16kHz. I'd rather completely eliminate HF content that I can't hear, instead of giving it a few kbps just because I might hear some of it.
I also prefer uniformity, so if some >16kHz content is cut, might as well cut it all.
[a href="index.php?act=findpost&pid=372400"][{POST_SNAPBACK}][/a]

-Y is to be clearly preferred over a stright lowpass IMO - it does not normally cost any bits  and helps to improve critical samples - there's one I remember (was it called "chenoa"? not sure...) which has lots of high frequency content which was easily ABXable for me with Lame 3.90.3 APS --lowpass 16 but not with APS -Y, with bitrates being the same IIRC. - Y just distributes the bits more wisely and in extreme situations does encode some prominent HF content if it is needed. So, it never hurts to use -Y instead of lowpass 16.
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)

Disable -Y?

Reply #19
Quote
Did you check the spectogram of your "original" file? Especially since you say that -k had the same cutoff.

If the problem is not the original file, then, that specific file does require a higher -V setting.
[a href="index.php?act=findpost&pid=372489"][{POST_SNAPBACK}][/a]

Yes, I compared it to the original. The spectogram of the original has full frequency as high as 22kHz across the board. I also compared them with -V2 setting, which shows a definite cutoff at 19kHz. It seems that even -k cannot override -Y.
twitter.com/pika2000

Disable -Y?

Reply #20
-Y isn't set at -V 2, it's only set for -V 3 and below

the lack of anything above 19khz even with -V 2 -k (i thought it was closer to 19.5 last i looked) is because of the psymodel.. and is a completely different issue all together
edit: further tests suggest the above issue is caused by ATH, not the psymodel

I see the -Y switch as a major problem for 'special' samples witch have stuff above 16khz because the frame size is calculated for 16khz, but then smashes the stuff in there as well (much like how CBR will smash in whatever you tell it to).. I just can't see this as being a 'good' thing, It's illogical IMHO.

... I have got to get me a binary that lets me disable -Y so I can do proper testing

edit: *deleted something* did more testing and proved one of my statements wrong... the rest still holds..
Vorbis-q0-lowpass99
lame3.93.1-q5-V9-k-nspsytune