• Welcome to ASR. 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!

Phonalyser: free open-source analyzer - THD, SNR/ENOB, frequency response, scope (+ QA40x support)

JavaSound shows only 32-bit selection and it works. The difference with WASAPI is that with JavaSound you can select it directly from the Phonalyser settings and with WASAPI you have to manually edit the preferences.yaml file, because there is no 32-bit option to select in the WASAPI settings. You will have to save 16-bit depth and edit the file.
Hmmm, I successfully use 32 bit with WASAPI for Cosmos E1DA and JLSound. But that are not SPDIF.
 
@audio_tony I have made some changes. Please try run preliminar 1.2.2 version.
Now app writes in log sound cards enumeration process like this:
Device format probe started: AudioPCI [plughw:0,0] (input)
Device format probe finished: AudioPCI [plughw:0,0] (input) - 14 format(s) in 2171 ms
Device format probe started: CB5 [plughw:1,1] (input)
Device format probe finished: CB5 [plughw:1,1] (input) - 8 format(s) in 54 ms
Device format probe started: AudioPCI [plughw:0,0] (output)
Device format probe finished: AudioPCI [plughw:0,0] (output) - 8 format(s) in 74 ms
Device format probe started: AudioPCI [plughw:0,1] (output)
Device format probe finished: AudioPCI [plughw:0,1] (output) - 8 format(s) in 1017 ms
Device format probe started: CB5 [plughw:1,1] (output)
Device format probe finished: CB5 [plughw:1,1] (output) - 18 format(s) in 40 ms
Please take a look
The sound devices now remain configured. The 'scope works but still no FFT.

I have attached the log file.
 

Attachments

THD/IMD table level units are now switchable, but as far as I see, this only affects the harmonics.

Other values are still a mix of dBV and percentages:
View attachment 552487

Could you consider using these 4 options that changes the output of the whole panel?

dBV
dBFS
dB
%
P.S. Actually SNR & N+D are always relative and should be dB.
And I wan't always have percent at THD/Harmonics values
 
And I wan't always have percent at THD/Harmonics values

How about keeping both, like with harmonics?

THD H2...H9: -120.00 dB 0.0001000 %
THD+N -110.00 dB 0.0003162 %

And you can change dB, dBFS, dBV etc from the options and keep percents always visible
 
Last edited:
The sound devices now remain configured. The 'scope works but still no FFT.
It takes less time to enumerate devices. But what is suspisious from your video - very low capture per s in 'scope. Du you have GPU acceleration on (under Look & feel).
It does impact only 'scope. FFT don't useGPU acceleration. On some new Linux distro used libglu1-mesa is not installed, to make 'scope faster you can install this library.
I have problems in my VM Linux run 'scope & FFT together, and I must introduce additional trottling in GL 'scope view.
But in your case in video you run FFT alone without 'scope. And I can still not understand wy FFT not rendered... I'm away thinking...
 
It takes less time to enumerate devices. But what is suspisious from your video - very low capture per s in 'scope. Du you have GPU acceleration on (under Look & feel).
The machine I'm running it on (in hardware, no VM) is an i7-4770K CPU @ 3.50GHz with 32G ram.
Video card is old (but still ok) - it's an NVIDIA Corporation GT218 [GeForce 210]

GPU acceleration is enabled. libglu1-mesa is installed.

I have some updates:

I tried the server version on Windows 7 (the machine is dual boot, Windows / Linux) and the server version worked ok with an external oscillator.

When I tried using the Phonalyser oscillator, I got an error: "The bench refused to open the output device, the device does not support this format".

But the FFT and 'scope worked fine. I did try other backends but the oscillator would not work.
So.. I switched back to Linux and tried the .dev package you published on Github - and that didn't work at all (no audio devices).

I then installed the server version on Linux - and both the ADC and DAC now work as expected.

I don't know what's different about the web version that it worked ok - I am puzzled!

But in any case - the server version works (and hopefully will still work after a reboot).


Screenshot_2026-08-18_18-00-41.png
Screenshot_2026-08-18_17-59-51.png
Win7-error.JPG
Win7-screenshot.JPG
 
The machine I'm running it on (in hardware, no VM) is an i7-4770K CPU @ 3.50GHz with 32G ram.
Video card is old (but still ok) - it's an NVIDIA Corporation GT218 [GeForce 210]
Good machine, should be more then enough!
When I tried using the Phonalyser oscillator, I got an error: "The bench refused to open the output device, the device does not support this format".
Maybe driver doesn't support SMSL XMOS? Have you take a look in server log (%PROGRAMDATA%\Phonalyser\logs)?
So.. I switched back to Linux and tried the .dev package you published on Github - and that didn't work at all (no audio devices).
You mean .deb package?
I don't know what's different about the web version that it worked ok - I am puzzled!
The server has actually all the same backends as GUI version. The only difference is that in full GUI it collects data and processes it oin one process.
By the way full GUI can also work with server. And I'm puzzling too...

Anyway thank you very much for testing!
 
Hi @audio_tony , I have made some further throttling and switched additional debug log on.
Manually build app v1.2.2 is accessible under https://edgo.org/scope/phonalyser-1.2.2-linux-x64.tgz
If you have time - please test it. You will see following log entries:

2026-08-21 18:14:55.717 [WARN ] org.edgo.audio.measure.gui.fft.FftAnalyzerWorker - 1. FFT analyze took 124.59 ms
2026-08-21 18:14:55.717 [WARN ] org.edgo.audio.measure.gui.fft.FftAnalyzerWorker - 2. FFT result achieved UI in 0.057 ms
2026-08-21 18:14:55.875 [WARN ] org.edgo.audio.measure.gui.fft.FftView - 3. FFT result rendered in 62.1584 ms

The third message actually showed after FFT is drawn. If you get long measured time or don't see them at all. I will investigate deeper.
Thank you for help!
 
Back
Top Bottom