lossyWAV 1.3.0 Development Thread, Added noise WAV bitdepth reduction method. |
![]() ![]() |
lossyWAV 1.3.0 Development Thread, Added noise WAV bitdepth reduction method. |
May 31 2010, 22:51
Post
#51
|
|
|
Group: Members Posts: 2260 Joined: 9-October 05 From: Dormagen, Germany Member No.: 25015 |
Bad news again, sorry.
Inspite of the increased bitrate there's a very audible added hiss now already in the first 0.7 second of furious (in the last second as well). -------------------- lame3100i -V0.5+ --adbr_short 480
|
|
|
|
May 31 2010, 23:01
Post
#52
|
|
![]() Group: Members Posts: 170 Joined: 28-May 09 From: Zagreb, Croatia Member No.: 70204 |
I haven't done any listening tests, but I can see by the noise spectrum that this is a bad move. I'm not trying to offend you, my criticism will be constructive.
Look at what's different between this: ![]() and this: ![]() Yes, the noise is much more concentrated around the signal which at first seems perfect, but that in itself is not automatically good and there's other stuff that's wrong too in the new noise shaping. First of all, notice how the older noise was lower in the lower frequencies. It's much more noticeable in this spectrum analysis of the entire noise added to the "wheee" sample by lossyWAV: ![]() That is the thing at which the old noise is better than the new one - the new one has nearly equal level at all frequencies (more precisely, the new noise is shaped only based on the signal instead of also being pushed towards higher frequencies regardless of the signal). Second is something at which both noise shaping algorithms are equally bad - the noise should be better concentrated around lower frequencies of the signal and less concentrated around higher frequencies, and in fact in such a way that when the spectrum is logarithmic (like the last of the three up there) the noise spreading around the signal will look equal (because that's how we hear sounds based on their frequency). So to wrap it all up, the lower the frequency in the original signal is the lower and more concentrated around it the added noise should be, while the higher the frequency the stronger and less concentrated around it the added noise should be. And of course, while I was writing all this you've already made a new version which incorporates all of that. |
|
|
|
Jun 1 2010, 01:35
Post
#53
|
|
![]() Group: Members Posts: 1495 Joined: 31-January 04 Member No.: 11664 |
I will try and test things later this week. If I recall, -Z had big problems with serioustrouble, mandylion-sm, dear-sir. I'd be interested to hear the impact of -Z -A
|
|
|
|
Jun 1 2010, 03:20
Post
#54
|
|
|
Group: Members Posts: 4 Joined: 25-March 10 Member No.: 79322 |
Hi! I can't get lossyWAV to work with FLAC or TAK. Here's the error I get:
CODE 1 out of 1 tracks converted with major problems. Source: "J:\h\Jay-Z\14 - Jay-Z - My 1st Song.flac" An error occurred while writing to file (The encoder has terminated prematurely with code 1 (0x00000001); please re-check parameters) : "C:\Users\Administrator\Desktop\14 My 1st Song.lossy.flac" Additional information: Encoder stream format: 44100Hz / 2ch / 16bps Command line: "C:\Windows\winsxs\wow64_microsoft-windows-commandprompt_31bf3856ad364e35_6.1.7600.16385_none_f15662b6686e5211\cmd.exe" /d /c G:\Kits\"@ Codec"\lossyWAV_beta_1.2.2f\lossyWAV.exe - --standard -P --stdout|G:\Kits\"@ Codec"\FLAC\flac.exe - -b 512 -8 -f -o"14 My 1st Song.lossy.flac" --ignore-chunk-sizes Working folder: C:\Users\Administrator\Desktop\ Conversion failed: The encoder has terminated prematurely with code 1 (0x00000001); please re-check parameters I'm using Win7 x64. Thanks. This post has been edited by aand: Jun 1 2010, 03:23 |
|
|
|
Jun 1 2010, 04:44
Post
#55
|
|
|
Group: Members Posts: 2 Joined: 28-May 10 Member No.: 80963 |
...cmd.exe" /d /c G:\Kits\"@ Codec"\lossyWAV_beta_1.2.2f\lossyWAV.exe - --standard -P --stdout|G:\Kits\"@ Codec"\FLAC\flac.exe - -b 512 -8 -f -o"14 My 1st Song.lossy.flac" --ignore-chunk-sizes... Needs a space in the bolded part. Like this: ...-f -o "14 My 1st Song.lossy.flac"... See if that works. Edit: formatting. This post has been edited by Bonzaii: Jun 1 2010, 04:45 |
|
|
|
Jun 1 2010, 06:12
Post
#56
|
|
![]() lossyWAV Developer Group: Developer Posts: 1722 Joined: 11-April 07 From: Wherever here is Member No.: 42400 |
Command line: "C:\Windows\winsxs\wow64_microsoft-windows-commandprompt_31bf3856ad364e35_6.1.7600.16385_none_f15662b6686e5211\cmd.exe" /d /c G:\Kits\"@ Codec"\lossyWAV_beta_1.2.2f\lossyWAV.exe - --standard -P --stdout|G:\Kits\"@ Codec"\FLAC\flac.exe - -b 512 -8 -f -o"14 My 1st Song.lossy.flac" --ignore-chunk-sizes You need to remove either --standard or -P (--portable) as both are quality pseudonyms they are mutually exclusive and lossyWAV exits with an error.-------------------- lossyWAV -q X | FLAC -8 ~= 308kbps
SGS III (Rooted) + 64GB |
|
|
|
Jun 1 2010, 08:24
Post
#57
|
|
|
Group: Members Posts: 2260 Joined: 9-October 05 From: Dormagen, Germany Member No.: 25015 |
Though there's certainly room for improvement for the way the adaptive noise shaping is working IMO version 1.2.2.d is very good already. I think it's a significant improvement over not doing adaptive noise shaping.
I didn't only listen to bibilolo and furious, but also enjoyed some regular music - at an average bitrate of 266 kbps for my regular test set! @Nick: Can you please provide version 1.2.2.d for download again? (More generally speaking: apart from the current test version always that version which is expected to be the best one so far using adaptive noise shaping). @shadowking: Wonderful to hear you're gonna do listening tests. This post has been edited by halb27: Jun 1 2010, 08:28 -------------------- lame3100i -V0.5+ --adbr_short 480
|
|
|
|
Jun 1 2010, 12:26
Post
#58
|
|
![]() lossyWAV Developer Group: Developer Posts: 1722 Joined: 11-April 07 From: Wherever here is Member No.: 42400 |
lossyWAV beta 1.2.2g attached to post #1 in this thread.
[edit] spectrograms removed - superseded. [/edit] This post has been edited by Nick.C: Jun 4 2010, 19:20 -------------------- lossyWAV -q X | FLAC -8 ~= 308kbps
SGS III (Rooted) + 64GB |
|
|
|
Jun 1 2010, 15:26
Post
#59
|
|
|
Group: Members Posts: 2260 Joined: 9-October 05 From: Dormagen, Germany Member No.: 25015 |
I tried furious with 1.2.2.g -Z --adaptive.
Hiss is still there, maybe a tiny bit weaker than with 1.2.2.f. For a comparison I tested 1.2.2.d again. It's the same thing. Same kind of hiss in the first 0.7 second. I just didn't here it before though it isn't very subtle. -------------------- lame3100i -V0.5+ --adbr_short 480
|
|
|
|
Jun 1 2010, 17:41
Post
#60
|
|
|
Group: Members Posts: 4 Joined: 25-March 10 Member No.: 79322 |
CODE cmd.exe /d /c G:\Kits\"@ Codec"\lossyWAV_beta_1.2.2f\lossyWAV.exe - --standard --stdout|G:\Kits\"@ Codec"\FLAC\flac.exe - -b 512 -8 -f -o "02 Light It Up.lossy.flac" --ignore-chunk-sizes Conversion failed: The encoder has terminated prematurely with code 1 (0x00000001); please re-check parameters I also put FFTW dlls in c:\windows(the 32bit ones, I suppose lossyWAV has to be compiled for x64 to work witth x64 DLLs). SOLVED: This post has been edited by aand: Jun 1 2010, 17:48 |
|
|
|
Jun 1 2010, 17:54
Post
#61
|
|
![]() lossyWAV Developer Group: Developer Posts: 1722 Joined: 11-April 07 From: Wherever here is Member No.: 42400 |
@halb27: Would you have time to try different filter orders? The default is 32, but the upper limit is 128. Processing time suffers, but I wonder if the hiss might be reduced with an increase to the filter order.
@aand: Yes, lossyWAV is a 32-bit application and requires one of the 32-bit FFTW DLLs. (I still reckon it was "--standard" and "-P" on the command line that caused your crash....) -------------------- lossyWAV -q X | FLAC -8 ~= 308kbps
SGS III (Rooted) + 64GB |
|
|
|
Jun 1 2010, 18:35
Post
#62
|
|
|
Group: Members Posts: 4 Joined: 25-March 10 Member No.: 79322 |
Nope.
QUOTE 1 out of 1 tracks converted with major problems. Source: "F:\@ Music Lossless\Cypress Hill - Rise Up [2010] FLAC\02. Light It Up.flac" An error occurred while writing to file (Could not start commandline encoder: The parameter is incorrect. ) : "C:\Users\Administrator\Desktop\02 Light It Up.lossy.tak.lossy.tak.lossy.tak" Additional information: Encoder stream format: 44100Hz / 2ch / 16bps Command line: ""C:\Windows\winsxs\wow64_microsoft-windows-commandprompt_31bf3856ad364e35_6.1.7600.16385_none_f15662b6686e5211\cmd.exe"" /d /c "G:\Kits\@ Codec\lossyWAV_beta_1.2.2f\lossyWAV" - --standard --silent --stdout|C:\"Program Files (x86)"\foobar2000\Takc -e -p2m -fsl512 -ihs - "02 Light It Up.lossy.tak.lossy.tak.lossy.tak" Working folder: C:\Users\Administrator\Desktop\ Conversion failed: Could not start commandline encoder: The parameter is incorrect. So TAK doesn't work. I don't know why it does the strange thing with the extension. Edit: OK I removed "" from: "C:\Windows\winsxs\wow64_microsoft-windows-commandprompt_31bf3856ad364e35_6.1.7600.16385_none_f15662b6686e5211\cmd.exe" , and I ended up with lossy.tak.lossy.tak.lossy.tak extension, and the conversion worked. A bit weird tho. I suppose it's in connection with the use of quote signs... This post has been edited by aand: Jun 1 2010, 18:54 |
|
|
|
Jun 1 2010, 19:33
Post
#63
|
|
![]() Group: Developer Posts: 1229 Joined: 27-June 07 Member No.: 44789 |
General LossyWAV setup help should probably have its own thread, no?
C. -------------------- TAK -p4m :: LossyWAV -q 6 | TAK :: Lame 3.98 -V 2
|
|
|
|
Jun 1 2010, 23:57
Post
#64
|
|
![]() Group: Members Posts: 170 Joined: 28-May 09 From: Zagreb, Croatia Member No.: 70204 |
I don't know if I did something wrong or you did something wrong, but the spectrum I get for the noise added to "wheee" with -Z --adaptive definitely doesn't look like what you got.
This post has been edited by doccolinni: Jun 1 2010, 23:59 |
|
|
|
Jun 2 2010, 09:52
Post
#65
|
|
|
Group: Members Posts: 2260 Joined: 9-October 05 From: Dormagen, Germany Member No.: 25015 |
@halb27: Would you have time to try different filter orders? ... Yes, I will, though probably not today (I got water into my right ear this morning). -------------------- lame3100i -V0.5+ --adbr_short 480
|
|
|
|
Jun 2 2010, 21:28
Post
#66
|
|
![]() lossyWAV Developer Group: Developer Posts: 1722 Joined: 11-April 07 From: Wherever here is Member No.: 42400 |
I don't know if I did something wrong or you did something wrong, but the spectrum I get for the noise added to "wheee" with -Z --adaptive definitely doesn't look like what you got. It doesn't look right at all - have you been able to replicate it, and if so, what was your command line?-------------------- lossyWAV -q X | FLAC -8 ~= 308kbps
SGS III (Rooted) + 64GB |
|
|
|
Jun 2 2010, 22:46
Post
#67
|
|
![]() Group: Members Posts: 170 Joined: 28-May 09 From: Zagreb, Croatia Member No.: 70204 |
I don't know if I did something wrong or you did something wrong, but the spectrum I get for the noise added to "wheee" with -Z --adaptive definitely doesn't look like what you got. It doesn't look right at all - have you been able to replicate it, and if so, what was your command line?It ends up like that every single time. That's not the lwcdf file mind you, that's me manually opening both the original and the processed file in CoolEdit Pro 2.1 and copying one inverted over the other, which gives the difference between the two waveforms. Command line is the same one I used for earlier testing: CODE lossyWAV wheeee.wav -Z --adaptive
This post has been edited by doccolinni: Jun 2 2010, 22:49 |
|
|
|
Jun 2 2010, 23:06
Post
#68
|
|
![]() lossyWAV Developer Group: Developer Posts: 1722 Joined: 11-April 07 From: Wherever here is Member No.: 42400 |
.... but the .lwcdf.wav file is the difference between the two waveforms....
If you try: CODE lossywav wheeee.wav -Z -A -C you should see that that is the case.
ren wheeee.wav wheeee_org.wav lossywav wheeee.lossy --merge comp wheeee.wav wheeee_org.wav -------------------- lossyWAV -q X | FLAC -8 ~= 308kbps
SGS III (Rooted) + 64GB |
|
|
|
Jun 2 2010, 23:10
Post
#69
|
|
![]() Group: Members Posts: 170 Joined: 28-May 09 From: Zagreb, Croatia Member No.: 70204 |
.... but the .lwcdf.wav file is the difference between the two waveforms.... If you try: CODE lossywav wheeee.wav -Z -A -C you should see that that is the case.ren wheeee.wav wheeee_org.wav lossywav wheeee.lossy --merge comp wheeee.wav wheeee_org.wav Done "lossywav wheeee.wav -Z -A -C", analysed the lwcdf file, got the same spectrum as the one I posted. |
|
|
|
Jun 3 2010, 03:49
Post
#70
|
|
|
Group: Members Posts: 2 Joined: 28-May 10 Member No.: 80963 |
Is there any way you can expand the Adapative parameter so that it can take values > 128? I've been using -q 1.5 -A 128 and it has reduced filesizes by quite a bit (most of my files are ~320 kbps, which is awesome). It also seems to theoretically improve sound, for a trade-off in encoding speed, but I could wait ~2 minutes a file IF it would, to a significant degree, shrink file size and (theoretically?) improve quality, but that may be just me.
Of course the important question is, does the adaptive filter seem to have much effect past a value of 128? Thanks, and keep up the great work. I love tinkering around with the program. -Bonzaii |
|
|
|
Jun 3 2010, 08:12
Post
#71
|
|
![]() lossyWAV Developer Group: Developer Posts: 1722 Joined: 11-April 07 From: Wherever here is Member No.: 42400 |
Done "lossywav wheeee.wav -Z -A -C", analysed the lwcdf file, got the same spectrum as the one I posted. There's an error in the adaptive shaping algorithm when the internal FFT routines are used - this error is not present when the FFTW DLLs are used. I'll get a fix out as soon as I can.[edit] .... which might explain halb27's hiss problems - @halb27: do you have either of the FFTW DLLs installed on your PC? [/edit] This post has been edited by Nick.C: Jun 3 2010, 08:14 -------------------- lossyWAV -q X | FLAC -8 ~= 308kbps
SGS III (Rooted) + 64GB |
|
|
|
Jun 3 2010, 08:32
Post
#72
|
|
|
Group: Members Posts: 2260 Joined: 9-October 05 From: Dormagen, Germany Member No.: 25015 |
I have libfftw3-3.dll and libfftw3l-3.dll in the same folder as lossyWAV.exe.
Is this enough to have them used? -------------------- lame3100i -V0.5+ --adbr_short 480
|
|
|
|
Jun 3 2010, 08:49
Post
#73
|
|
![]() Group: Members Posts: 170 Joined: 28-May 09 From: Zagreb, Croatia Member No.: 70204 |
Done "lossywav wheeee.wav -Z -A -C", analysed the lwcdf file, got the same spectrum as the one I posted. There's an error in the adaptive shaping algorithm when the internal FFT routines are used - this error is not present when the FFTW DLLs are used. I'll get a fix out as soon as I can.No problem. I have libfftw3-3.dll and libfftw3l-3.dll in the same folder as lossyWAV.exe. Is this enough to have them used? It used to be, I don't know if it is any more... I've got libfftw3-3.dll in the same directory as lossyWAV as well and it still does the error, so I presume that you have to provide either -F or --fftw option on the command line. It was probably done so the program wouldn't be confused which .dll to use if both libfftw3-3.dll and libfftw3l-3.dll were present, because -F and --fftw now accept an option which can be either "single", "double" or "off", if I understand correctly. So to make lossyWAV use FFTW libraries for Fourier transforms you need to provide one of these four options on the command line after "lossyWAV" and the filename:
That is, if I've understood it correctly. |
|
|
|
Jun 3 2010, 08:55
Post
#74
|
|
![]() lossyWAV Developer Group: Developer Posts: 1722 Joined: 11-April 07 From: Wherever here is Member No.: 42400 |
The DLL should be in a directory which is on the path, not necessarily in the directory where lossyWAV is - unless that directory is on the path. By default, lossyWAV will try to use libfftw3-3.dll (double precision) then, if that is not available, libfftw3f-3.dll (single precision) then, if that is not available, internal routines. The easy way to tell is to look at the end of the results line - if "[D]" is present, libfftw3-3.dll was used; if "[S]" is present then libfftw3f-3.dll was used; if "[I]" was used then the internal FFT routines were used.
-------------------- lossyWAV -q X | FLAC -8 ~= 308kbps
SGS III (Rooted) + 64GB |
|
|
|
Jun 3 2010, 08:56
Post
#75
|
|
![]() Group: Members Posts: 170 Joined: 28-May 09 From: Zagreb, Croatia Member No.: 70204 |
Ok, this is completely confusing me now.
libfftw3-3.dll is in the same directory as lossyWAV, yet when I add "-F double" to the command line it nonchalantly tells me that libfftw3-3.dll was not found and that it will proceed to use the internal FFT routines. |
|
|
|
![]() ![]() |
|
Lo-Fi Version | Time is now: 24th May 2013 - 14:42 |