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: lossyWAV 1.2.0 Development Thread (Read 313956 times) previous topic - next topic
0 Members and 2 Guests are viewing this topic.

lossyWAV 1.2.0 Development Thread

Reply #350
I think lossyWAV with dynamic noise shaping (and maybe dynamic block size switching) could produce transparency at surprisingly low bitrates. Not mp3 bitrates, but not far off.

Cheers,
David.

Wouldn't dynamic block size switching require the lossless encoder to use the same or fraction of the same block size dynamically? Would you use metadata to pass on the information?

lossyWAV 1.2.0 Development Thread

Reply #351
I've got no idea how to implement it. Metadata is a good idea - I hadn't thought of that!

Otherwise you have to integrate lossyWAV and the specific lossless encoder together.

I really like the idea of having a "blocksize" metadata file - though of course the lossless encoders would have to be modified to read it - but that would be possible if this was ever developed. Thanks for the suggestion jido!

Cheers,
David.

lossyWAV 1.2.0 Development Thread

Reply #352
Looking at this --sortspread .... Bitrate increase is higher for regular music than for problem samples.

I'm still tuning the changes to the noise-threshold-shift values.

By the time you have the mechanisms in place and tested, and I mean in the last phase before a new non-beta release, I think the scale should be adjusted.
Originally -q 5 should have been transparent (for known samples),  -q 0-4.9 lower bit rates than that, -q 5.1-9 gradually nearing lossless bit rates. At the moment -q 5 is almost considered overkill (yes, some exaggeration) and - 2.5 has to be transparent. I hope with all the more defensive approaches it would make sense to lower the bit rates over the whole -q scale and re-determine what bit rate is really necessary for the goal (transparency for known samples).

After that the positions for the settings like --portable have to be chosen again, this one could match for example -q 3.2, 2.7, 2.4 or whatever.

I know it is easier said than done, but how do you guys feel about the idea?

(BTW for me the biggest interest in lossyFlac are bit rates around or below 400)
In theory, there is no difference between theory and practice. In practice there is.

lossyWAV 1.2.0 Development Thread

Reply #353
Just tested --sortspread, don't know if it was supposed to be tested alone or in conjunction with other parameter but alone it is not good, it adds new artefacts that I never heard before to both samples.
The result is strange because it soften old artefacts & it add new artefacts in the same time. For Abfahrt Hinwil the little "synthetizer effect" (I don't know how to call that) sound is soften but it adds a clic, which is instantly ABXable (1min15 for 8 success). For Therion the "tearing in the noise" is reduced but it adds cracklings. For Abfahrt Hinwil, there is a regression for sure. For Therion the cracklings might be masked by the tearing in the -q 0 encoding, so maybe --sortspread just reveals them, it is possible but I doubt it as I think I heard cracklings even after the tearing was supposed to end & anyway I prefer the tearing compared to cracklings.

Quote
foo_abx 1.3.3 report
foobar2000 v0.9.6.4
2009/04/03 20:12:36

File A: D:\01- Abfahrt Hinwil (Artefact Only) -q 0 --sortspread.lossy.flac
File B: D:\01- Abfahrt Hinwil (Artefact Only) -q 0.lossy.flac

20:12:36 : Test started.
20:12:53 : 01/01  50.0%
20:13:02 : 02/02  25.0%
20:13:10 : 03/03  12.5%
20:13:17 : 04/04  6.3%
20:13:24 : 05/05  3.1%
20:13:31 : 06/06  1.6%
20:13:40 : 07/07  0.8%
20:13:48 : 08/08  0.4%
20:13:49 : Test finished.

----------
Total: 8/8 (0.4%)


Quote
foo_abx 1.3.3 report
foobar2000 v0.9.6.4
2009/04/03 20:15:14

File A: D:\00- Therion (Artefact+Context) -q 0 --sortspread.lossy.flac
File B: D:\00- Therion (Artefact+Context) -q 0.lossy.flac

20:15:14 : Test started.
20:15:45 : 01/01  50.0%
20:16:47 : 02/02  25.0%
20:17:47 : 03/03  12.5%
20:18:30 : 04/04  6.3%
20:19:11 : 05/05  3.1%
20:20:07 : 06/06  1.6%
20:20:50 : 07/07  0.8%
20:21:25 : 08/08  0.4%
20:21:27 : Test finished.

----------
Total: 8/8 (0.4%)

lossyWAV 1.2.0 Development Thread

Reply #354
@GeSomeone:

I feel your concern about bitrate going up too high for --portable with new details of the machinery under investigation.
I feel like you.

For the easier part: for --standard I'd still like it to be exactly where it is now with respect to 2Bdecided's original idea. Moreover IMO there's absolutely no need for changes in the machinery that brings --standard bitrate up because quality is excellent (I'd rather see it the other way around but IMO there's no real need for changes in this respect.)
Same goes for --extreme and --insane.

For the -q levels below --portable especially the cutting edge transparency levels around -q 1.5 I welcome any experienced quality improvement like that of -a 5 even if bitrate goes up a bit. It simply makes these levels more usable.

Hardest decision is about --portable. I personally like it to be at the noise threshold of the original idea where it is now (so I like it to be -q 2.5). But I dislike variants of details which brings bitrate up more and more. Like you I'd like to see --portable's bitrate at 400 kbps or below. --portable as is even without -a 5 shows up a quality which now can be expected great for portable purposes with even a small security amrgin (which I also like - that's why I also use -a 5).

Things may change when essentially new aspects come up in practice like with dynamic noise shaping.
lame3995o -Q1.7 --lowpass 17

lossyWAV 1.2.0 Development Thread

Reply #355
@sauvage78 - hmm..... it appears that something unexpected is happening. I will have a look at the --sortspread code and revert. It certainly isn't meant to introduce clicks. What you describe seems like a bug.

@halb27 - I do not want bitrate creep (upwards) either. I do want as good a quality as can be achieved though. It may be that further exploration of --sortspread needs to be deferred until after the release of v1.2.0.

lossyWAV 1.2.0 Development Thread

Reply #356
lossyWAV beta v1.1.3h attached to post #1 in this thread.

I "tuned" the --sortspread noise-threshold-shift table so that the resultant bitrate for my 55 problem sample set was the same for both default spreading and --sortspread.

Resultant FLAC bitrates:
Code: [Select]
10 Album Test Set
+------------------------------------------------------------------------------------------------------+
| beta v1.1.3h |   FLAC   | --insane |--extreme |--standard|--portable|  --zero  | --nasty  | --awful  |
|--------------+----------+----------+----------+----------+----------+----------+----------+----------|
|   default    | 854kbit/s| 641kbit/s| 558kbit/s| 472kbit/s| 386kbit/s| 292kbit/s| 231kbit/s| 200kbit/s|
|--------------+----------+----------+----------+----------+----------+----------+----------+----------|
| --sortspread |   "  "   | 651kbit/s| 571kbit/s| 488kbit/s| 398kbit/s| 297kbit/s| 236kbit/s| 197kbit/s|
+------------------------------------------------------------------------------------------------------+

55 Problem Sample Set
+------------------------------------------------------------------------------------------------------+
| beta v1.1.3h |   FLAC   | --insane |--extreme |--standard|--portable|  --zero  | --nasty  | --awful  |
|--------------+----------+----------+----------+----------+----------+----------+----------+----------|
|   default    | 782kbit/s| 660kbit/s| 591kbit/s| 515kbit/s| 432kbit/s| 327kbit/s| 260kbit/s| 218kbit/s|
|--------------+----------+----------+----------+----------+----------+----------+----------+----------|
| --sortspread |   "  "   | 660kbit/s| 591kbit/s| 515kbit/s| 432kbit/s| 327kbit/s| 260kbit/s| 218kbit/s|
+------------------------------------------------------------------------------------------------------+

lossyWAV 1.2.0 Development Thread

Reply #357
lossyWAV beta 1.1.3i attached to post #1 in this thread.

lossyWAV 1.2.0 Development Thread

Reply #358
Here is the ABX log for 1.1.3i (I didn't even tried 1.1.3h). --sortspread now work as it should no more clics on Abfahrt Hinwil. The improvement was easy Abfahrt Hinwil & Therion (more stable), & nice to listen to on both samples. I begin to think that Abfahrt Hinwil is a perfect sample for tuning lossywav easyly: it is always faster to ABX, gives clics when you break things & is nicer to listen to. (Therion is tiring, I am bored of it). At -Q 0 the improvement is instantly ABXable, very comparable to -a 5. Maybe better maybe worst, I dunno yet. But this time I was instantly seduced by both the same way. I should do a direct comparison to know. But again if it stacks then --sortspread -a 5 is the way to go. If it stacks then --portable can most likely be remap to -q 2. Some test is needed for this. But I won't test if in the end -portable stay at -q 2.5. I am pretty convinced that if it stacks -q 2 --sortspread -a 5 is the same or better than -portable now, specially as -q 2 was already very hard to ABX even without this parameters.

Code: [Select]
foo_abx 1.3.3 report
foobar2000 v0.9.6.4
2009/04/07 18:54:04

File A: C:\01- Abfahrt Hinwil (Artefact Only) -Q 0 --sortspread.lossy.flac
File B: C:\01- Abfahrt Hinwil (Artefact Only) -Q 0.lossy.flac

18:54:04 : Test started.
18:54:17 : 01/01  50.0%
18:54:27 : 02/02  25.0%
18:54:42 : 03/03  12.5%
18:54:54 : 04/04  6.3%
18:55:04 : 05/05  3.1%
18:55:14 : 06/06  1.6%
18:55:24 : 07/07  0.8%
18:55:35 : 08/08  0.4%
18:55:37 : Test finished.

----------
Total: 8/8 (0.4%)


Code: [Select]
foo_abx 1.3.3 report
foobar2000 v0.9.6.4
2009/04/07 19:04:21

File A: C:\00- Therion (Artefact+Context) -Q 0 .lossy.flac
File B: C:\00- Therion (Artefact+Context) -Q 0 --sortspread.lossy.flac

19:04:21 : Test started.
19:04:52 : 01/01  50.0%
19:05:37 : 02/02  25.0%
19:06:15 : 03/03  12.5%
19:06:44 : 04/04  6.3%
19:07:12 : 05/05  3.1%
19:07:35 : 06/06  1.6%
19:08:10 : 07/07  0.8%
19:08:41 : 08/08  0.4%
19:08:42 : Test finished.

----------
Total: 8/8 (0.4%)



If someone can upload 1.1.3c or 1.1.3d, no matter if it is usefull or not, just to see if Nick didn't break anything with --varspread while I was away  the old --sortspread shows that Nick can break things without instantly noticing it so I'd prefer to have a look by myself even if he tells me it's useless.

lossyWAV 1.2.0 Development Thread

Reply #359
--sortspread is strictly superior to -a 5 (which is a great news as -a 5 was already a nice improvement), but the different is slight, I ABXed it on Abfahrt Hinwil, I may fell on Therion, as Therion is always harder & the difference is tiny. I had one failure in the beginning (the time to get used to the reduced artefact) but instead of cancelling & restarting I decided to go up to 12 trials as it was a tiny difference but not hard to ABX. For me I ereased my first failure, it's a completely successfull ABX.

Code: [Select]
foo_abx 1.3.3 report
foobar2000 v0.9.6.4
2009/04/07 19:40:37

File A: C:\01- Abfahrt Hinwil (Artefact Only) -Q 0 -a 5.lossy.flac
File B: C:\01- Abfahrt Hinwil (Artefact Only) -Q 0 --sortspread.lossy.flac

19:40:37 : Test started.
19:41:29 : 00/01  100.0%
19:42:39 : 01/02  75.0%
19:43:06 : 02/03  50.0%
19:43:43 : 03/04  31.3%
19:43:58 : 04/05  18.8%
19:44:54 : 05/06  10.9%
19:45:16 : 06/07  6.3%
19:45:32 : 07/08  3.5%
19:45:48 : 08/09  2.0%
19:46:04 : 09/10  1.1%
19:46:29 : 10/11  0.6%
19:46:56 : 11/12  0.3%
19:46:59 : Test finished.

----------
Total: 11/12 (0.3%)


So to sum up, at this point, --centre & the bugged old --sortspread are both good for the delete bin & then we have the new --sortspread, -a 5 & --underlap 5, that all three brings some improvements.
-a 5 is strictly inferior to a 0.5 increase within the scale (so it's something like a ~0.25 increase) & --sortspread is strictly superior to -a 5 (so it's superior to a ~0.25 increase).

What would be needed now is to compare -Q 0 --sortspread Vs. -Q 0.5,  & also -Q 0 --underlap 5 Vs. -Q 0.5 to evaluate the gain more precisely & then see if the gain stacks in some way.
If at last two of those stacks then -Q 2 can be considered as transparent as the old -Q 2.5.
If any of -Q 0 --sortspread or -Q 0 --underlap 5 directly beats -Q 0.5 then it's even clearer. I suspect --sortspread alone to be able to achieve this, or to be very near to achieve this.

lossyWAV 1.2.0 Development Thread

Reply #360
I just tested  -Q 0 --sortspread Vs.  -Q 0.5, things didn't ended as I expected. It was too good to be true. First -Q 0 --sortspread beats -Q 0.5 on Abfahrt Hinwil, that was a very good news & I was quite happy. Then I tested the same thing with Therion & I ABXed a click on my right hear (headphones) at 1 second just after the big tearing & just before the guitar begins. I wasn't able to ABX the tearing so if you consider only the tearing artefact there is a real improvement of ~0.5 in the quality scale like with the Abfahrt Hinwil sample, the problem is that there is a click that make me lose focus.
I think that this is a new click that wasn't there when there was a click with Abfahrt Hinwil in the previous version of --sortspread. So the result is mixed for --sortspread it's both a big improvement (same or superior to a 0.5 jump in the quality scale) but it adds clicks, first it was with Abfahrt Hinwil, now it's fixed, but the fix introduced another click with Therion. Remove all the clicks bug & you have only the big improvement of ~-9Kbps on average (~-2 mo saved by album).

Code: [Select]
foo_abx 1.3.3 report
foobar2000 v0.9.6.4
2009/04/07 21:47:16

File A: C:\01- Abfahrt Hinwil (Artefact Only)  -Q 0.5.lossy.flac
File B: C:\01- Abfahrt Hinwil (Artefact Only) -Q 0 --sortspread.lossy.flac

21:47:16 : Test started.
21:47:37 : 01/01  50.0%
21:47:48 : 02/02  25.0%
21:48:03 : 03/03  12.5%
21:48:18 : 04/04  6.3%
21:48:31 : 05/05  3.1%
21:48:55 : 06/06  1.6%
21:49:10 : 07/07  0.8%
21:49:21 : 08/08  0.4%
21:49:23 : Test finished.

----------
Total: 8/8 (0.4%)


Code: [Select]
foo_abx 1.3.3 report
foobar2000 v0.9.6.4
2009/04/07 22:04:49

File A: C:\00- Therion (Artefact+Context)  -Q 0.5.lossy.flac
File B: C:\00- Therion (Artefact+Context) -Q 0 --sortspread.lossy.flac

22:04:49 : Test started.
22:05:23 : 01/01  50.0%
22:05:41 : 02/02  25.0%
22:05:58 : 03/03  12.5%
22:06:19 : 04/04  6.3%
22:06:47 : 05/05  3.1%
22:07:17 : 06/06  1.6%
22:07:33 : 07/07  0.8%
22:07:54 : 08/08  0.4%
22:07:58 : Test finished.

----------
Total: 8/8 (0.4%)

 

lossyWAV 1.2.0 Development Thread

Reply #361
In all this discussion about bitrates and stuff, I find it a bit funny from a more or less outside point of view: What's the matter of having a text variant like "portable" as an option for new users as long as you can set everything via double vale parameters as well? As long as you can expect these double values to give you about the same bitrates in each development status I don't think that there should be a problem other than the scale being not fixed or opened ended eventually... but if the users may want to encode with -q 15.5 for whatever reason, I don't see why it shouldn't be allowed if the algorithms can take it. Even if the resulting file is perhaps bigger than the original one (how could that be though).

lossyWAV 1.2.0 Development Thread

Reply #362
What's the matter of having a text variant like "portable" ...
Quote
may want to encode with -q 15.5 for whatever reason, I don't see why it shouldn't be allowed if the algorithms can take it.

The presets like --standard and --portable were requested by users/testers. Can help to get a quick starting point.
It is very sensible to have some "sanity checks" on the parameters, to be sure the algorithm can take it. 
In theory, there is no difference between theory and practice. In practice there is.

lossyWAV 1.2.0 Development Thread

Reply #363
@sauvage78 - beta v1.1.3c appended to the first post as requested. Thanks again for the ABX testing - I'm going to have to delve deeper into this click that you are experiencing. Could you try ABXing --sortspread --maxclips 0 and see if that makes a difference?

We may well end up remapping the presets - that will require some ABX effort to determine the transparency point and then some work on my part to come up with proposed presets.

I still think that --insane will stay somewhere near where it is - offering nearer to lossless but still about a 20% resultant bitrate reduction.

lossyWAV 1.2.0 Development Thread

Reply #364
just tried -q 0 --sortspread --maxclips 0 Vs. -q 0 --sortspread, it doesn't help, it sound exactly the same, there is a click that is not in the lossless file but might be masked in encodes where the tearing is bigger (like without --sortspread). I didn't bother saving an ABX log. Thks for beta v1.1.3c will have a look.

lossyWAV 1.2.0 Development Thread

Reply #365
Out of interest, at what quality level does the click disappear?

lossyWAV 1.2.0 Development Thread

Reply #366
Just tested -Q 1 --sortspread Vs -Q 0 --sortspread, the click was gone so I tried -Q 0.5 --sortspread, the click was gone too, so it might be a normal artefact due to very low setting, I dunno. All I know is that it is here at -Q 0 --sortspread. Then, as I had the files already encoded at hand, I made a very quick test (4 runs) to see how transparent were both -Q 0.5 --sortspread & -Q 1 --sortspread, none is transparent for me, the click is gone but some tearing remains, so if we ever remap setting, we should focus on -Q1.5 & Q2, I suspect -Q 2 --sortspread to already be transparent & -Q1.5 --sortspread to be near transparency, if we add -a 5 & --underlap 5, & if it stacks then -Q1.5 --sortspread -a 5 --underlap 5 is likely to be very very near transparency & -Q 1 --sortspread -a 5 --underlap 5 to be near transparency. All this remains to be tested further for confirmation. In fact IMHO we can already assume that transparency is reached with -Q 2 --sortspread, what remains to be tested is how wide is the safety margin compared to -Q 1.5 with added parameters & if -Q 1.5 with added parameters is already transparent too or not. (There I am not sure, it depends on how parameters stacks)

Code: [Select]
foo_abx 1.3.3 report
foobar2000 v0.9.6.4
2009/04/09 11:02:37

File A: C:\00- Therion (Artefact+Context) -Q 0 --sortspread.lossy.flac
File B: C:\00- Therion (Artefact+Context) -Q 1 --sortspread.lossy.flac

11:02:37 : Test started.
11:02:55 : 01/01  50.0%
11:03:09 : 02/02  25.0%
11:03:23 : 03/03  12.5%
11:03:44 : 04/04  6.3%
11:04:01 : 05/05  3.1%
11:04:25 : 06/06  1.6%
11:04:37 : 07/07  0.8%
11:04:49 : 08/08  0.4%
11:04:50 : Test finished.

----------
Total: 8/8 (0.4%)


Code: [Select]
foo_abx 1.3.3 report
foobar2000 v0.9.6.4
2009/04/09 11:06:37

File A: C:\00- Therion (Artefact+Context) -Q 0 --sortspread.lossy.flac
File B: C:\00- Therion (Artefact+Context) -Q 0.5 --sortspread.lossy.flac

11:06:37 : Test started.
11:07:01 : 01/01  50.0%
11:07:16 : 02/02  25.0%
11:07:35 : 03/03  12.5%
11:07:48 : 04/04  6.3%
11:08:04 : 05/05  3.1%
11:08:18 : 06/06  1.6%
11:08:30 : 07/07  0.8%
11:08:48 : 08/08  0.4%
11:08:49 : Test finished.

----------
Total: 8/8 (0.4%)


Code: [Select]
foo_abx 1.3.3 report
foobar2000 v0.9.6.4
2009/04/09 11:11:28

File A: C:\00- Therion (Artefact+Context) Lossless.flac
File B: C:\00- Therion (Artefact+Context) -Q 0.5 --sortspread.lossy.flac

11:11:28 : Test started.
11:11:41 : 01/01  50.0%
11:11:54 : 02/02  25.0%
11:12:12 : 03/03  12.5%
11:12:32 : 04/04  6.3%
11:12:53 : Test finished.

----------
Total: 4/4 (6.3%)


Code: [Select]
foo_abx 1.3.3 report
foobar2000 v0.9.6.4
2009/04/09 11:13:09

File A: C:\00- Therion (Artefact+Context) Lossless.flac
File B: C:\00- Therion (Artefact+Context) -Q 1 --sortspread.lossy.flac

11:13:09 : Test started.
11:13:28 : 01/01  50.0%
11:13:44 : 02/02  25.0%
11:14:09 : 03/03  12.5%
11:14:30 : 04/04  6.3%
11:14:35 : Test finished.

----------
Total: 4/4 (6.3%)

lossyWAV 1.2.0 Development Thread

Reply #367
Could you possibly upload your problem section in which the click is produced on -q 0 processing? I will look at it in detail and revert.

Thanks.

lossyWAV 1.2.0 Development Thread

Reply #368
Here is a screenshot of the problem in audacity:



It's the Therion (Artefact+Context) sample at V1.1.3i -Q 0 --sortspread, but in the screenshot the sample is shortened to 2 sec & the left channel is splitted & muted in order to zoom on the problem.
It's somewhere between 1.70 & 1.80, I am not sure I highlighted the exact time. It is hard to ABX at the beginning (a light click only on the right hear), but now I can catch it 100% of time.

I am not sure it matters so much now as with or without this click -Q 0 --sortspread is not transparent anyway & settings that might be transparent are unaffected (-Q 2 --sortspread, -Q 1.5 --sortspread+ other parameters), but well if you can get rid of it.

You can download the 2 sec sample here

lossyWAV 1.2.0 Development Thread

Reply #369
I have managed my attachments in order to gain some space, so you can now download the a lossless version of the 2 sec sample in order to compare, I have added a screenshot of the lossless version that highlight in green another click that shouldn't be confused with the real artefact click, if you have very good ears you might hear a very light click in the lossless version, it is not the same click at all, the artefact I am speaking about doesn't occurs at the same timing. The normal very light click happens right in the middle of the tearing artefact so it's always masked by the tearing in not transparent lossywav encodes.

If you already don't hear the artefact click in the lossywav encode, I doubt you will ear the normal click in the lossless version, it's even lighter I think. But I prefer warning you to be sure that you don't mix both.

lossyWAV 1.2.0 Development Thread

Reply #370
I have (finally) worked out the formula for the added noise due to bitdepth reduction:

reference_threshold[fft_bit_length,bits_removed]:=((0.5*fft_bit_length+bits_removed-2.9163)+log10(1+2^-(2*bits_removed-1)/(2*log10(2))*20*log10(2).

The only empirical value is the -2.9163.

lossyWAV 1.2.0 Development Thread

Reply #371
I just tried V1.1.3c -Q0 --varspread Vs. V1.1.3c -Q0, I completely failed so there was no regression (no real progression either). The small success in Abfahrt Hinwil is in favor of --varspread if it wasn't placebo, so everything is fine for me.

Code: [Select]
foo_abx 1.3.3 report
foobar2000 v0.9.6.4
2009/04/10 23:28:28

File A: C:\01- Abfahrt Hinwil (Artefact Only) V1.1.3c -Q0 --varspread.lossy.flac
File B: C:\01- Abfahrt Hinwil (Artefact Only) V1.1.3c -Q0.lossy.flac

23:28:28 : Test started.
23:29:01 : 01/01  50.0%
23:29:25 : 01/02  75.0%
23:29:40 : 02/03  50.0%
23:30:04 : 03/04  31.3%
23:30:28 : 03/05  50.0%
23:30:50 : 04/06  34.4%
23:31:16 : 05/07  22.7%
23:31:45 : 05/08  36.3%
23:32:28 : 06/09  25.4%
23:33:25 : 07/10  17.2%
23:33:59 : 08/11  11.3%
23:34:48 : 09/12  7.3%
23:35:17 : 09/13  13.3%
23:36:10 : 09/14  21.2%
23:36:35 : Test finished.

----------
Total: 9/14 (21.2%)


Code: [Select]
foo_abx 1.3.3 report
foobar2000 v0.9.6.4
2009/04/10 23:38:12

File A: C:\00- Therion (Artefact+Context) V1.1.3c -Q0 --varspread.lossy.flac
File B: C:\00- Therion (Artefact+Context) V1.1.3c -Q0.lossy.flac

23:38:12 : Test started.
23:39:20 : 00/01  100.0%
23:40:03 : 01/02  75.0%
23:40:32 : 01/03  87.5%
23:41:28 : 01/04  93.8%
23:42:10 : 02/05  81.3%
23:42:55 : 03/06  65.6%
23:43:24 : 04/07  50.0%
23:43:51 : 04/08  63.7%
23:43:54 : Test finished.

----------
Total: 4/8 (63.7%)

lossyWAV 1.2.0 Development Thread

Reply #372
Just tested V1.1.3i -Q 0 --underlap 5 Vs. V1.1.3i -Q 0.5, I did it because I wanted to evaluate the gain from --underlap 5 compared to --sortspread & -a 5. I was happyly surprised -Q 0 --underlap 5 beats -Q 0.5. This is not an evidence on the Therion sample, on this sample both are near to be tied (which is already quite good for --underlap 5), then I tried Abfahrt Hinwil & it was much easier to ABX in favor of --underlap 5.

The conclusion of all this is that:
--sortspread > 0.5 gain in the scale (with a minor click on -q 0)
--underlap 5 >= 0.5 gain in the scale
-a 5 > 0.25 gain in the scale (In fact -a 5 is the weakest of the additionnal parameter)

So, this remains to be tested, but I am pretty confident that if all this stacks together we can expect -q 1.5 --sortspread --underlap 5 -a 5 to be transparent. In all logic it should be.

This should lead lossywav to be transparent near ~360Kbps & I expect a -~18Kbps or 4Mo by album gain from it.

Code: [Select]
foo_abx 1.3.3 report
foobar2000 v0.9.6.4
2009/04/11 18:07:43

File A: C:\00- Therion (Artefact+Context) V1.1.3i -Q 0 --underlap 5.lossy.flac
File B: C:\00- Therion (Artefact+Context) V1.1.3i -Q 0.5.lossy.flac

18:07:43 : Test started.
18:08:57 : 01/01  50.0%
18:09:39 : 02/02  25.0%
18:10:03 : 03/03  12.5%
18:10:36 : 04/04  6.3%
18:11:25 : 05/05  3.1%
18:11:54 : 05/06  10.9%
18:12:41 : 05/07  22.7%
18:14:25 : 06/08  14.5%
18:15:17 : 07/09  9.0%
18:17:11 : 07/10  17.2%
18:17:14 : Test finished.

----------
Total: 7/10 (17.2%)


Code: [Select]
foo_abx 1.3.3 report
foobar2000 v0.9.6.4
2009/04/11 18:18:28

File A: C:\01- Abfahrt Hinwil (Artefact Only) V1.1.3i -Q 0 --underlap 5.lossy.flac
File B: C:\01- Abfahrt Hinwil (Artefact Only) V1.1.3i -Q 0.5.lossy.flac

18:18:28 : Test started.
18:19:25 : 01/01  50.0%
18:19:33 : 02/02  25.0%
18:19:43 : 03/03  12.5%
18:20:01 : 04/04  6.3%
18:20:25 : 05/05  3.1%
18:21:19 : 06/06  1.6%
18:21:43 : 07/07  0.8%
18:21:58 : 08/08  0.4%
18:22:01 : Test finished.

----------
Total: 8/8 (0.4%)

lossyWAV 1.2.0 Development Thread

Reply #373
lossyWAV beta 1.1.3j appended to post #1 in this thread.

Explanation of revised -X or --sortspread <n> parameter:

After FFT analysis and skewing of the FFT results, the portion of the FFT_result array between 20Hz and 16kHz (or as specified by --limit) is sorted in order of ascending numerical value. Once sorted, up to 8 values are used to determine the result of the spreading function. i.e.

for --sortspread 0, only the second lowest result is used to determine the result;
for --sortspread 1, the first three results are multiplied by (0.2500,0.5000,0.2500) respectively and added  to determine the result;
for --sortspread 2, the first three results are multiplied by (0.3333,0.3333,0.3333) respectively and added  to determine the result;
for --sortspread 3, the first four results are multiplied by (0.4214,0.2770,0.1820,0.1197) respectively and added  to determine the result;
for --sortspread 4, the first five results are multiplied by (0.4594,0.2608,0.1481,0.0841,0.0477) respectively and added  to determine the result;
for --sortspread 5, the first six results are multiplied by (0.4781,0.2548,0.1357,0.0723,0.0385,0.0205) respectively and added  to determine the result;
for --sortspread 6, the first seven results are multiplied by (0.4880,0.2522,0.1303,0.0674,0.0348,0.0180,0.0093) respectively and added  to determine the result;
for --sortspread 7, the first eight results are multiplied by (0.4934,0.2511,0.1278,0.0651,0.0331,0.0168,0.0086,0.0044) respectively and added to determine the result;

3 to 7 have a constant ratio between adjacent elements of the multiplier array and 0 to 7 are "centred" about the second element.

lossyWAV 1.2.0 Development Thread

Reply #374
I just tested V1.1.3j -Q 0 --sortspread 7 to see if the click was gone. It is not gone, --sortspread 7 doesn't affect it at all. Honestly if you can't get rid of it, I can sleep with it as I know it disappears at bitrate that are supposed to be transparent. This is very -q 0 specific & I will never use -q 0 as long as it is not transparent even without the click. I begin to think that this click is due to low setting, that's all.
You should focus on what you want to swallow as used by default within the new parameters IMHO. What do you want to swallow between --sortspread 2, --underlap 5 & -a 5 ?
I failed to noticed any difference between --sortspread 2 & --sortspread 7 on Abfahrt Hinwil (I tried quickly Therion, there was no obvious difference too).

Code: [Select]
foo_abx 1.3.3 report
foobar2000 v0.9.6.4
2009/04/16 02:43:03

File A: C:\01- Abfahrt Hinwil (Artefact Only) V1.1.3j -Q 0 --sortspread 7.lossy.flac
File B: C:\01- Abfahrt Hinwil (Artefact Only) V1.1.3j -Q 0 --sortspread 2.lossy.flac

02:43:03 : Test started.
02:44:15 : 00/01  100.0%
02:44:23 : 01/02  75.0%
02:44:50 : 02/03  50.0%
02:45:15 : 02/04  68.8%
02:45:42 : 03/05  50.0%
02:45:53 : 03/06  65.6%
02:46:08 : 03/07  77.3%
02:46:51 : 03/08  85.5%
02:46:59 : Test finished.

----------
Total: 3/8 (85.5%)