There is nothing abnormal here, it's simply a result of digital volume attenuation.
This is probably more obvious on a 16 bits source than a 24 bits one.
The WiiM gets 16 bits amplitude data. Let's say you reduce the volume to 25% of max. This means you are sending to your DAC a 16 bit digital signal where all samples amplitude have been reduced by 4, ie, 2 bits are lost, this is now effectively a 14 bits signal.
The poster says very low volume. Divide by 128 and it's 7 bits you now lost. You now have a 9 bits signal. It *will* distort especially if it's only 44kHz.
If you use the WiiM internal DAC then it's worked around by scaling the samples to 32 bits before attenuation. But that doesn't work if you are sending to the digital output the same bit depth as the source. I'm that case the WiiM can only lost resolution.
The only ways I can think around it are:
* For USB, to use the USB volume control messages to control the DAC own volume (if it supports it) instead of scaling down the bitstream. I don't believe WiiM supports this today.
* To use the option to force the output resolution and aet it to the max (24 bits) which should limit the effects of the loss, but that will only work if WiiM implement the output forced resolution scaling *before* the volume attenuation (I sincerely hope so but I can imagine engineering shortcuts that would make them do it the wrong way around). Sadly scaling frequency is tricky and not great, you really only want to scale bit depth in that case. I don't know if WiiM supports it (travelling away from my device right now so I cant check)