• WANTED: Happy members who like to discuss audio and other topics related to our interest. Desire to learn and share knowledge of science required. There are many reviews of audio hardware and expert members to help answer your questions. Click here to have your audio equipment measured for free!

Beta-test: DeltaWave Null Comparison software

KSTR

Major Contributor
Joined
Sep 6, 2018
Messages
2,690
Likes
6,013
Location
Berlin, Germany
Just installed DW on Ubuntu 20.04.2.0 LTS and it works, and even exits and restarts cleanly. Here are the steps, using winetricks:

Install Wine, 64-bit:
sudo apt install wine64

Verify Wine version (installed 5 for me):
wine --version

Install Winetricks:
sudo wget 'https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks' -O /usr/local/bin/winetricks
sudo chmod +x /usr/local/bin/winetricks

Needed to install cabextract for my distro:
sudo apt-get install cabextract

Install .NET 4.6.1:
env WINEPREFIX=$HOME/winedotnet wineboot --init env WINEPREFIX=$HOME/winedotnet winetricks --force dotnet461 corefonts

Download, extract and install DeltaWave:
wget 'https://deltaw.org/DeltaWaveSetup.zip' unzip DeltaWaveSetup.zip env WINEPREFIX=$HOME/winedotnet wine DeltaWaveSetup.exe

Now, find the DeltaWave icon in the program finder, and launch it!

View attachment 119437
Went through your instructions and DW install seems to have succeeded, although .NET (4.5-->4.6-->4.6.1) install took ~15min and threw tons of errors. I'll see if I get any ill effects...
I'm on Linux Mint Xfce 20.04 LTS.
 

Blumlein 88

Grand Contributor
Forum Donor
Joined
Feb 23, 2016
Messages
20,521
Likes
37,050
I had the previous version working on Manjaro. I just downloaded the new version and installed it directly via wine. It also worked fine other than being slow running via wine.
 

Blumlein 88

Grand Contributor
Forum Donor
Joined
Feb 23, 2016
Messages
20,521
Likes
37,050
Looks like there are problems in Optimize now. It will do one round of optimizing for PK metric and stop. It will do one round of optimizing for other metrics, but then gets stuck in a loop doing the same one step over and over. At least for gain, drift or offset. I haven't tried all the functions. It does this on my Win10 machine which is where I first saw it. It also acts the same on the linux install.

Sometimes you are too accommodating to our requests for your own good. You certainly went above and beyond to load my preferred version of linux and figure out how I could install it. That was quite nice of you in case I didn't convey that previously.
 

KSTR

Major Contributor
Joined
Sep 6, 2018
Messages
2,690
Likes
6,013
Location
Berlin, Germany
Looks like there are problems in Optimize now. It will do one round of optimizing for PK metric and stop. It will do one round of optimizing for other metrics, but then gets stuck in a loop doing the same one step over and over. At least for gain, drift or offset.
I think it's always been like that (and it's not a bug in my view). I maxing out (stalling) the optimizer all the time and then doing the fine-tuning manually -- gain mostly, sometimes sub-sample shifts.
 

Blumlein 88

Grand Contributor
Forum Donor
Joined
Feb 23, 2016
Messages
20,521
Likes
37,050
I think it's always been like that (and it's not a bug in my view). I maxing out (stalling) the optimizer all the time and then doing the fine-tuning manually -- gain mostly, sometimes sub-sample shifts.
When I've used it, it would continue doing iterations in both directions eventually settling onto an optimum result or at least a near optimum zone. I sometimes let it run for very long periods of time. It wasn't like it is now. I suppose I can reload an earlier version and see how it differs on the same two files.
 

KSTR

Major Contributor
Joined
Sep 6, 2018
Messages
2,690
Likes
6,013
Location
Berlin, Germany
I would think if the varied parameter set and target is the same then results are also the same, provided that any used random number generator is initialized the same at program start which may or may not be the case (there are good reasons for either way) and of course unless Paul changed other optimizer internals.
 
OP
pkane

pkane

Master Contributor
Forum Donor
Joined
Aug 18, 2017
Messages
5,629
Likes
10,202
Location
North-East
Looks like there are problems in Optimize now. It will do one round of optimizing for PK metric and stop. It will do one round of optimizing for other metrics, but then gets stuck in a loop doing the same one step over and over. At least for gain, drift or offset. I haven't tried all the functions. It does this on my Win10 machine which is where I first saw it. It also acts the same on the linux install.

Sometimes you are too accommodating to our requests for your own good. You certainly went above and beyond to load my preferred version of linux and figure out how I could install it. That was quite nice of you in case I didn't convey that previously.

The optimizer will stop when it detects no change in the desired target metric from one iteration to the next. I’ll double check, but because PK metric is perception-based, it does remove a lot of variability in the result due to small changes in the parameters. So it’s possible that I may need a different optimizer than the one I’m using now for PK Metric.

One other change that may appear to slow-down the optimizer: I used to add the results to the list whenever any of the values improved, not just the desired target. If you selected RMS Null and Correlated Null improved while RMS Null was worse, this result would still be added to the list. I changed this so only the results that produce an improvement in the target metric are added. So, you'll see fewer results being added to the list as the optimizer runs, but these will be real improvements in what you're optimizing, and not any other, random, improvements.
 
Last edited:

Blumlein 88

Grand Contributor
Forum Donor
Joined
Feb 23, 2016
Messages
20,521
Likes
37,050
The optimizer will stop when it detects no change in the desired target metric from one iteration to the next. I’ll double check, but because PK metric is perception-based, it does remove a lot of variability in the result due to small changes in the parameters. So it’s possible that I may need a different optimizer than the one I’m using now for PK Metric.

One other change that may appear to slow-down the optimizer: I used to add the results to the list whenever any of the values improved, not just the desired target. If you selected RMS Null and Correlated Null improved while RMS Null was worse, this result would still be added to the list. I changed this so only the results that produce an improvement in the target metric are added. So, you'll see fewer results being added to the list as the optimizer runs, but these will be real improvements in what you're optimizing, and not any other, random, improvements.
I think the latter part where you don't show all the improvements is the difference. The PK metric will appear to run and run, but eventually stops showing only one additional result.


There is a difference in the results between the two versions.
Below is a screenshot for the same two files first version 61 and then versions 62.

1616866049149.png


1616866079725.png
 
OP
pkane

pkane

Master Contributor
Forum Donor
Joined
Aug 18, 2017
Messages
5,629
Likes
10,202
Location
North-East
I think the latter part where you don't show all the improvements is the difference. The PK metric will appear to run and run, but eventually stops showing only one additional result.


There is a difference in the results between the two versions.
Below is a screenshot for the same two files first version 61 and then versions 62.

View attachment 120662

View attachment 120663

Yes, I made that change when I saw a very high correlated null value while the RMS null was quite worse compared to the starting value, and I was trying to optimize the RMS Null.
 
Last edited:

mehmethand

Member
Joined
Mar 19, 2021
Messages
10
Likes
4
Hi pkane,

I downloaded 1.0.62b and try to analyse these 2 files : https://www.dropbox.com/sh/ltd6jz9d9qwj7cg/AADibgR_sBWSPHRe4vZDny6Pa?dl=0
Everthing all calculations, tabs, graphs seem to be working except PK Metric, Linearity, Lissajous, Clock drift tabs. Those tabs are empty, shows nothing just a gray screen. Is this a bug or normal behaivour?

Edit : PK shows nothing at first. when I change dbFS to dBr graph shows up for PK Metric.
 

KSTR

Major Contributor
Joined
Sep 6, 2018
Messages
2,690
Likes
6,013
Location
Berlin, Germany
I can confirm some things broke in 1.0.62 (on native Win10)

- Linearity plot shows up but never gets updated thereafter (tested with applying gain manually). Reload plots doesn't help. Data itself gets processed correctly (can see change in residual waveform).
With Ref==Comp and gain 0.5, after "Apply":
1616934512371.png


- Settings window crops off part of the text items in the top line and does not show all section (no auto-sizing), and it cannot be resized properly (you can only make it larger and larger) and when left and reinvoked it forgets the previous size (which is a good thing with the "larger-only" bug)
1616935159417.png


- Spectra in general seem broken (will need to examine closer)
 
OP
pkane

pkane

Master Contributor
Forum Donor
Joined
Aug 18, 2017
Messages
5,629
Likes
10,202
Location
North-East
I can confirm some things broke in 1.0.62 (on native Win10)

- Linearity plot shows up but never gets updated thereafter (tested with applying gain manually). Reload plots doesn't help. Data itself gets processed correctly (can see change in residual waveform).
With Ref==Comp and gain 0.5, after "Apply":
View attachment 120770

- Settings window crops off part of the text items in the top line and does not show all section (no auto-sizing), and it cannot be resized properly (you can only make it larger and larger) and when left and reinvoked it forgets the previous size (which is a good thing with the "larger-only" bug)
View attachment 120771

- Spectra in general seem broken (will need to examine closer)

Hi Klaus,

The scaling of the settings window will be fixed -- Windows does strange things with different displays and DPI settings. It looks fine on mine, but needs to be adjusted for others.

The linearity plot seems to update as expected for me from the Adjustments window. Can you describe the exact steps and settings that lead to it not working?

Spectrum windows also seem OK here. Other than changing spacing of the labels on the log frequency axis, I don't believe I changed anything related to these plots, but let me know how to reproduce the issue you're seeing.

Regards,

-Paul
 
OP
pkane

pkane

Master Contributor
Forum Donor
Joined
Aug 18, 2017
Messages
5,629
Likes
10,202
Location
North-East
Hi pkane,

I downloaded 1.0.62b and try to analyse these 2 files : https://www.dropbox.com/sh/ltd6jz9d9qwj7cg/AADibgR_sBWSPHRe4vZDny6Pa?dl=0
Everthing all calculations, tabs, graphs seem to be working except PK Metric, Linearity, Lissajous, Clock drift tabs. Those tabs are empty, shows nothing just a gray screen. Is this a bug or normal behaivour?

Edit : PK shows nothing at first. when I change dbFS to dBr graph shows up for PK Metric.

Hi,

There is an issue that's caused by the data and a small bug. The data appears to be scaled above lower 6 bits, so the linearity plot when trying to compute the trend is failing to find enough data points and throws an exception. That's causing the rest of processing to stop. I'll fix this in the next update. Here's what the linearity plot looks like for your data:

1616943558512.png


I'll post an update with the fix for this a bit later today.

Regards,

-Paul
 

KSTR

Major Contributor
Joined
Sep 6, 2018
Messages
2,690
Likes
6,013
Location
Berlin, Germany
Hi Paul,
The scaling of the settings window will be fixed -- Windows does strange things with different displays and DPI settings. It looks fine on mine, but needs to be adjusted for others.
OK. This is just cosmetic anyway so probably "won't fix" ;-)

The linearity plot seems to update as expected for me from the Adjustments window. Can you describe the exact steps and settings that lead to it not working?
Load any file to both Ref and Comp (or two almost equal ones).
Match (or just Show).
Open Linearity plot tab (all is fine).
Open Manual Adjustments, set gain to 0.5. Apply.
Data in general does update, gain change is seen in Matched Spectra and other plots.
But Linearity does not update. It does update on change of DC, Drift and Offset, though.

Spectrum windows also seem OK here. Other than changing spacing of the labels on the log frequency axis, I don't believe I changed anything related to these plots, but let me know how to reproduce the issue you're seeing.
I did a full purge of all data DW leaves behind even after uninstall and now everything is OK again. So some sort of stale data/settings glitch.
 
Last edited:
OP
pkane

pkane

Master Contributor
Forum Donor
Joined
Aug 18, 2017
Messages
5,629
Likes
10,202
Location
North-East
Better late than even later ;) Just posed the updated version 1.0.63 to addresses issues reported in .62:
  • Fix: Settings window toolbar can overlap text below under certain DPI settings
  • Fix: Exception and stop processing when linearity plot contains too few samples in the lower few bits
  • Fix: When subsample correction is enabled but drift correction is turned off, small delays below 1/1000000 of a sample might still be processed and applied, unnecessarily. These were properly ignored when drift correction was enabled
 
Last edited:

KSTR

Major Contributor
Joined
Sep 6, 2018
Messages
2,690
Likes
6,013
Location
Berlin, Germany
@pkane, Previously, the linearity plot did reflect the gain applied (which seems intuitive to me), now it seems to do so only when a non-manual change was executed (like from a match). EDIT: No, it's never affected by gain, now.
In order to fine-adjust the gain manually so that the null is deepest at the desired level (usually the lower levels) it was nice to have the feedback in the Linearity plot and I used that all the time (and now that you added the dB option it would be even easier that before).
 

KSTR

Major Contributor
Joined
Sep 6, 2018
Messages
2,690
Likes
6,013
Location
Berlin, Germany
Use case is here: https://www.audiosciencereview.com/...dible-with-music-signals-some-examples.20886/
The lower two plots of distortion/compressing DUTs where I manually shifted the linearity to fit to 0dB (maximum cancellation) at low levels -- where distortion and compression is lowest -- by applying the specific gain (read from the linearity plot) because that properly (or let's say, better) exposes the ill-effects at higher levels.
 
Last edited:
OP
pkane

pkane

Master Contributor
Forum Donor
Joined
Aug 18, 2017
Messages
5,629
Likes
10,202
Location
North-East
Use case is here: https://www.audiosciencereview.com/...dible-with-music-signals-some-examples.20886/
The lower two plots of distortion/compressing DUTs where I manually shifted the linearity to fit to 0dB (maximum cancellation) at low levels -- where distortion and compression is lowest -- by applying the specific gain (read from the linearity plot) because that properly (or let's say, better) exposes the ill-effects at higher levels.

Let me think about, it Klaus, you make a good case for it :) I believe the correct non-linearity computation is what it's doing now -- it should be independent of a constant multiplier or offset. Maybe I'll make it an option to switch to the older way of displaying it...
 
Top Bottom