Quantcast
Channel: Squeezebox : Community : Forums - Logitech Media Server
Viewing all articles
Browse latest Browse all 5300

DeltaWave show LMS and Squeezelite transcoding are not bit perfect with FLAC

$
0
0
Messing around with Deltawave https://deltaw.org/ I found that capturing Alsa output from Squeezelite on RPi-OS I have absolutely bit perfect output from Squeezelite if streaming WAV files from local network.

Sadly results from streaming FLAC where not as joyful and comply with listening observation others have posted. It seem that FLAC is less than 50% accurate with phase issues and artefacts in the upper and lower spectrum, even level values differ from the original.

First I thought this where a Squeezelite issue and with no luck tried to capture output from a Touch to compare. If someone know how to direct stream to file on the Touch please let me know.
Anyway, then it dawn on me I could transcode on the LMS. Sadly this produce similar result as transcoding on the Squeezelite.

Now question is, are the any way to mitigate this? LMS use flac 1.3.4 for the convertion and
'/usr/share/squeezeboxserver/Bin/armhf-linux/flac -d' produce bit perfect wav file in test.

convert.conf changed to '[flac] -dcs $START$ $END$ -- $FILE$' makes no difference. Implying something else in the transcoding is messing up the FLAC stream.

Resolution +/-1 dB
Name:  spectragraph1.jpg
Views: 112
Size:  26.0 KB

Name:  spectrum1.png
Views: 95
Size:  19.6 KB

Name:  phase1.png
Views: 97
Size:  31.9 KB

Code:

DeltaWave v2.0.4, 2022-12-02T11:27:32.1514377+01:00
Reference:  01 - Scuttle Buttin'.flac[L] 3362184 samples 44100Hz 16bits, stereo, MD5=00
Comparison: fromFLAC.wav[L] 3604557 samples 44100Hz 16bits, stereo, MD5=00
Settings:
        Gain:True, Remove DC:True
        Non-linear Gain EQ:True        Non-linear Phase EQ: True
        EQ FFT Size:65536, EQ Frequency Cut: 0Hz - 0Hz, EQ Threshold: -500dB
        Correct Non-linearity: False
        Correct Drift:True, Precision:30, Subsample Align:True
        Non-Linear drift Correction:False
        Upsample:True, Window:Kaiser
        Spectrum Window:Kaiser, Spectrum Size:32768
        Spectrogram Window:Hann, Spectrogram Size:4096, Spectrogram Steps:2048
        Filter Type:FIR, window:Kaiser, taps:262144, minimum phase=False
        Dither:False bits=0
        Trim Silence:True
        Enable Simple Waveform Measurement: False

Discarding Reference:  Start=15s, End=20s
Discarding Comparison: Start=15s, End=20s

Initial peak values Reference: -0,224dB  Comparison: -1,62dB
Initial RMS values Reference: -19,195dB  Comparison: -20,586dB

Null Depth=9,423dB
Trimming 0 samples at start and 0 samples at the end that are below -90,31dB level

X-Correlation offset: -114066 samples
Trimming 0 samples at start and 0 samples at the end that are below -90,31dB level

Drift computation quality, #1: Excellent (0μs)


Trimmed 35651 samples ( 808,412698ms) front, 32042 samples ( 726,575964ms end)


Final peak values Reference: -0,224dB  Comparison: -0,224dB
Final RMS values Reference: -19,222dB  Comparison: -19,222dB

Gain= -1,3957dB (0,8516x) DC=0,00002 Phase offset=-2586,530612ms (-114066 samples)
Difference (rms) = -99,74dB [-102,25dBA]
Correlated Null Depth=103,33dB [96,54dBA]
Clock drift: 0 ppm


Files are NOT a bit-perfect match (match=42,98%) at 16 bits
Files match @ 50,0162% when reduced to 15,78 bits


---- Phase difference (full bandwidth): 0,0513013542315364°
        0-10kHz: 0,04°
        0-20kHz: 0,05°
        0-24kHz: 0,05°
---- Variable Group Delay. Frequency matched from 0Hz to 0,0kHz:
        1kHz = 114,2ps (0,00°)
        2kHz = 114,1ps (0,00°)
        4kHz = 114ps (0,00°)
        8kHz = 113,8ps (0,00°)
        16kHz = 113,4ps (0,00°)
Timing error (rms jitter): 4ns
PK Metric (step=400ms, overlap=50%):
RMS=-110,7dBFS
Median=-110,7
Max=-108,1

99%: -108,86
75%: -110,16
50%: -110,73
25%: -111,22
1%: -112,89

gn=1,17431189829828, dc=1,78881024144389E-05, dr=0, of=-114066

DONE!

Signature: a77d13611bafce8db5c57b48f5a8f361

RMS of the difference of spectra: -134,491321809717dB
DF Metric (step=400ms, overlap=0%):
Median=-83,3dB
Max=-79,4dB Min=-87,6dB

1% > -85,97dB
10% > -84,95dB
25% > -84,15dB
50% > -83,32dB
75% > -82,58dB
90% > -81,96dB
99% > -79,69dB

Linearity 26,2bits @ 0.5dB error

Attached Images
   

Viewing all articles
Browse latest Browse all 5300

Trending Articles