DiAna, a software Distortion Analyzer

False positives

Hi Chris,
....I really like your work,
Thank you.
don't get me wrong here, but this is 2019. You don't get awards for making small executables.
Agreed. As nowadays memory is inexpensive, I don't expect awards for compactness, but I hope to get awards for speed. Generally, as you know, bloatware runs slower, compact software runs faster.
Anyone could still choose to use Win32 directly for a GUI application but almost no one wants to be that unproductive. Further, it is an unsafe approach and requires elevated permissions to work, and all your Win32 calls look fishy which is why virus scanners keep flagging your software.
....
I'm not convinced that direct Win32 API calls are responsible for false positives. Besides, contemporary high level languages produces code that rely on these calls just as well. The only difference is that they are hidden to the programmer behind wrappers etc. More over, these "unsafe" calls are still the backbone of Windows. So, for any Windows executable, it's impossible to not use them (one way or the other).
Instead, I've strong evidence that the false positives are compiler related, because I got different (number of) false positives when using another compiler or compiler options. Currently, I'm using an old Symantec compiler, while today almost any other C-programmer is using a Visual C compiler. So I can imagine that some AV scanners, who are not "accustomed" to my code, erroneously, and only based on heuristics, "think" it has something to do with a virus.

Anyhow, in case you still don't trust DiAna, just submit it to your AV company with a "false-positive white-list request".

Cheers, E.
 
New version

Again a new version is available (1.58.10). From now on DiAna is "UAC compliant". That means you don't have to specify explicitly to run the program as administrator, as this option is already embedded. I have also repaired a minor timing bug (with the RTX + ASIO buffer size < 128 + reference mode) and relocated a few pop-up menus.
Now that the "admin rights" are built-in, the funny thing is that significant less false positives are reported. According Jotti zero, and Virustotal only 8 out of 70. Again, these weird results prove that you can't trust those whining AV scanners.

Cheers, E.
 

Attachments

  • jotti.png
    jotti.png
    48.9 KB · Views: 274
  • virustotal-1.png
    virustotal-1.png
    21.4 KB · Views: 269
  • virustotal-2.png
    virustotal-2.png
    19.8 KB · Views: 265
@keantoken, thanks for answering the question.

I saw this

problem is that the distortion of ADC, DAC, op-amps etc, depends on a lot of things (amplitude, frequency, termination impedance, temperature, supply voltage....

Anyhow, DiAna offers two methods to decrease the distortion of the sound card itself by means of a differential measurement. The first one, a poor mans solution, records the distortion of ADC and DAC (in loop back mode) without DUT and saves the result. Then the DUT is inserted into the loop, though one should take care to keep the signal levels of DAC respectively DAC the same as in the previous measurement. Again the distortion is measured and finally subtracted by the saved distortion.

This does make sense in a sort of theoretic way.

Having measured various DACs, and checked waveforms, the whole thing was such an enormous can of worms, with violent distortion particularly problematic on high frequency square waves, I wanted some precisions..

I do quite a lot of calibration work for audio stuff, and it's becoming a real headache to work out where seemingly arbitrary distortion is coming from.
:rolleyes:
 
I saw this
This does make sense in a sort of theoretic way.
Also in real life, according to the shown THD graph.
Having measured various DACs, and checked waveforms, the whole thing was such an enormous can of worms, with violent distortion particularly problematic on high frequency square waves, ........
Audio DAC's are unsuitable to reproduce accurately "high frequency square waves". So what's your point?


BTW: What about 6.3V ;)
 
Last edited:
Member
Joined 2004
Paid Member
"
Anyhow, DiAna offers two methods to decrease the distortion of the sound card itself by means of a differential measurement. The first one, a poor mans solution, records the distortion of ADC and DAC (in loop back mode) without DUT and saves the result. Then the DUT is inserted into the loop, though one should take care to keep the signal levels of DAC respectively DAC the same as in the previous measurement. Again the distortion is measured and finally subtracted by the saved distortion."

Its not quite that simple as Phofman's efforts have shown. You need to manage both amplitude and phase of each harmonic and adding/subtracting needs to be done in a complex way. And you need to separate source and analyzer's native distortions.

Until Victor's oscillators were available I was really going in circles trying to isolate distortion sources. They are enough better than any analyzer, DAC or much else with a few exceptions that they can be used to isolate or define source and DUT intrinsic distortions. Then you can carefully deconstruct the contributors through the chain.

Phofman's software solution Digital Distortion Compensation for Measurement Setup can be really useful but I'm mixed about trusting it until I have been able to really verify it. Soon I hope. Also in the sub 100 dB distortion world there are a lot of gotcha's that can degrade confidence in the measurements.

I still really like DiAna as an analysis tool and use it with the RTX and the QA401 (and soundcards). Its much more useful than a simple FFT.
 
6V

reducing heater temperature slightly usually lowers noise and extends the life of cathode emissions.

Cheers
Alan
:)
#off-topic

Hi Alan,

That's what I also think. In the past, when tubes were used in Transatlantic cable repeaters, these were operated at a significant lower cathode temperature. This greatly increased the lifespan (see:175HQ, Tube 175HQ; Rohre 175HQ ID41097, Vacuum Pentode. Nevertheless, there a lot of audio guru's who claim that lowering the heater voltage is a dangerous practice that will shorten the MTBF or even the poisoning the cathode coating.

Cheers, E.
 
"
[...]
I still really like DiAna as an analysis tool and use it with the RTX and the QA401 (and soundcards). Its much more useful than a simple FFT.
Hi Demian,

Thank you for your support. :)

Here is a proposed model for using a notch filter with a two channel FFT. To get the accurate results you need a "gain phase" plot of the notch filter and maybe to interpolate the corrections for the specific harmonic frequencies
[..]
In addition to the already existing method for notch filter compensation (see: DiAna, a software Distortion Analyzer and further) I'm currently busy with an update of DiAna that not only accepts notch filter data (i.e. amplitude and phase) specified at precisely the frequency of the harmonics and no other frequencies, but also accepts a more general filter characterization (ranging for example from 20Hz to 96kHz in 1024 steps) and extract the amplitude and phase at the harmonics by means of interpolation.

Cheers, E,
 
Last edited:
Hi Demian,

Thank you for your support. :)

In addition to the already existing method for notch filter compensation (see: DiAna, a software Distortion Analyzer and further) I'm currently busy with an update of DiAna that not only accepts notch filter data (i.e. amplitude and phase) specified at precisely the frequency of the harmonics and no other frequencies, but also accepts a more general filter characterization (ranging for example from 20Hz to 96kHz in 1024 steps) and extract the amplitude and phase at the harmonics by means of interpolation.

Cheers, E,
From my point of view, this would be a very useful addition to DiAna, and I appreciate your effort.

Regards,
Braca
 
#off-topic
That's what I also think. In the past, when tubes were used in Transatlantic cable repeaters, these were operated at a significant lower cathode temperature. This greatly increased the lifespan (see:175HQ, Tube 175HQ; Rohre 175HQ ID41097, Vacuum Pentode. Nevertheless, there a lot of audio guru's who claim that lowering the heater voltage is a dangerous practice that will shorten the MTBF or even the poisoning the cathode coating.

A little more OT.
Being as I intend to keep my short stock of 8417 running as long as possible, (just had to drop a NOS one in) I am not unhappy to see them running 5.9-6V instead of 6.3V.
They are running 42-46m/a at idle at 635V (28-29W idle)...in fact I always found pentodes prefer to be best up at 80-85% max Pa for cleanest performance, far from the claimed 70%.

They don't appear to mind in the slightest, and deffo run far best at this!
(lowest THD and IMD, with zero C-OD).

Actually, I had audio ADC's in mind (instead of DAC's). My apologies for confusion.
And Why? Because of the low-pass reconstruction filter behind the ADC. This will inevitably distort square waves.
.

Coming back to DAC/ADC, this is a perfect example of what I consider totally unacceptable (and expensive too!).

I have tested a lot of different sound cards & convertors, ISA, PCI, Sony DAT machines etc
(the top trace is on loop back and is clean 1khz, but no good beyond 5khz, it's an old professional broadcast PCMCIA device in my notebook, I use every day ).

The arcam one was complete crap, so you can imagine the demolition job it does on steep transients.
Funnily enough the local hi end shop turns up its nose at my notebook output, claiming their's is lots better...

I really struggle to find a DAC/ADC that behaves itself at 24-96, because the only band which shows up amp behaviour properly is in the 5-15khz band.
 

Attachments

  • dac_arcam_2.jpg
    dac_arcam_2.jpg
    69.6 KB · Views: 175
Last edited: