Connect bit-imperfection workaround

  • 31 March 2017
  • 4 replies
  • 2169 views

Connect digital output in fixed volume mode is not bit-perfect as discussed here. There is a simple limiter applied with a maximum gain decrease of just under 1dB. This cannot be defeated in fixed volume mode.

However, in variable volume mode the maximum limiter gain becomes less as the volume slider is decreased from maximum. The limiting disappears completely after 13 taps on the slider. This is shown in this link.

The associated volume decrease in the signal is shown here. It is interesting to note that as the volume slider is moved back from maximum, the rate of volume decrease becomes larger at the same 13 tap point. I haven't gone beyond 20 taps to see if there are further changes in volume sensitivity.

What are the implications? Prior to version 6 of the software, fixed volume mode provided the cleanest audio path (bit-perfect), but this is now not the case. The cleanest audio path is now obtained by using variable output and setting the volume slider to 13 or more taps less than the maximum. It is not bit-perfect, since the volume has been decreased, but the decrease is at least uniform. Since Sonos use a 24-bit volume control, this volume decrease does not lose any information or cause any audio artifacts (except at very low volume) providing you feed a 24-bit DAC. An older 16-bit DAC will lose information at all volumes.

The upside is the ability to control the Connect volume using the app. This is also a downside because there will now be two volume controls for this room - the Connect and your amp. This is probably a small issue.

Another implication is for the speculation that other Sonos gear is affected by this limiter. Since it appears that the limiter is downstream of the volume control, it is now most likely that any limiting only happens at relatively high volumes, which is probably a good thing :)

Cheers, Peter.

This topic has been closed for further comments. You can use the search bar to find a similar topic, or create a new one by clicking Create Topic at the top of the page.

4 replies

Userlevel 2
Badge +2
Stumbled on to this thread and the "Connect no longer bit-perfect" thread.

I'm disappointed that the Connect is no longer bit-perfect at 100% and fixed digital output, but I'm not going to lose any sleep over it.

I am a little unclear on the 13 tap workaround, however.

The volume control on the Connect and volume control in the desktop software (both of which I never use, since I use the app volume control) have 50 taps of volume control range.

How do we know that 13 taps is 87% of max volume?

If the 50 taps are linear, 13 taps would be 74% of max volume.

On the android app, there are 36 taps of volume control, more widely spaced after the first few taps.

7 taps from max in the app equals 14 taps on the desktop software. 6 taps from max in the app equals 12 taps on the desktop software.

Therefore, to hit the 13 tap threshold, the app volume would need to be reduced at least 7 taps.

Does the above make sense?

Also, have there been an replies from Sonos in the last year regarding the loss of bit-perfect capability?


The limiting disappears completely after 13 taps on the slider.

It is not bit-perfect, since the volume has been decreased, but the decrease is at least uniform. Since Sonos use a 24-bit volume control, this volume decrease does not lose any information or cause any audio artifacts (except at very low volume) providing you feed a 24-bit DAC. An older 16-bit DAC will lose information at all volumes.

The upside is the ability to control the Connect volume using the app. This is also a downside because there will now be two volume controls for this room - the Connect and your amp. This is probably a small issue.

Another implication is for the speculation that other Sonos gear is affected by this limiter. Since it appears that the limiter is downstream of the volume control, it is now most likely that any limiting only happens at relatively high volumes, which is probably a good thing :)


My comments amplifying the above four points:
1. 13 taps is 87% of the volume slider on the Connect controller.
2. Below 87%, output is effectively bit perfect, since as stated, volume decrease loses no usable/audible information if a 24 bit external DAC, or the analog outputs of the Connect fed by its internal DAC, are used.
3. All who use the Connect in variable level mode soon find a way to exploit the advantages of the two volume controls, while eliminating the downside of having two. And this can be done by leaving the Connect volume slider needing to be used only in a 20% to 80% range of motion, a range that causes no loss of signal fidelity that is audible. Note that these numbers need not be exact; eyeballing to approximate for each is good enough.
4. The reason why this, if applicable for other Sonos gear like Connect Amp/Play units, is a good thing is that when these are driven to higher than 87% volume levels, peak sound levels of music with high dynamic range will start getting rolled back, approaching a 1db cut to peak music levels at 100% volume, and probably prevent speaker damage. Or hearing damage. I use play 1 units and Connect Amp, and I have never played any at those levels. The nearest I have had to use is 80%ish on my Connect Amp, once, during a party. With this kind of use, I have found the best of my zones to be as HiFi as any kit I have used in the past. Which was high end enough to cost me approximately USD 15000 in the living room. I am using the dollar number because that is the only workable definition I have found for the word " High End"!

Hopefully, those that don't have other reasons to NOT use a Connect, can now continue to rest easy, if disturbed. With or without an external DAC, the merits or lack of which I don't wish to digress into here;).

PS: All the above said, I continue to believe that those using Fixed level mode who started hearing things on reading the bit perfect thread, are victims of well known biases that every human is hardwired with. In my mind, there is no need to stop using Fixed level. In my opinion...🆒
With reference to the latest in the original thread, questions that arise here are:
1. Is this happening and therefore is the workaround applicable to all files or to only those in WAV format?
2. If this is also happening to files in - as one example - ALAC format, is this all that is happening to these files? Or are they being modified in any other way as well, perhaps in pursuit of volume normalisation, that persists even below 87% of max volume?
Without any evidence, so FWIW:

1. I speculate that the brickwall limiter applies to all formats including WAV, FLAC, ALAC and MP3. I get the impression that it's some DSP that is applied late in the processing chain on all compatible models. If I'm right it will, therefore, occur after the codec and any volume scaling or normalisation. In other words it will be applied to the resulting stream of audio data into the DAC and, therefore, will be independent of the original file format.

2. Tl;dr: Yes there is other modification

The limiter being described here is not volume normalisation in itself, as we have already discussed. Apparently it was put in place to support volume normalisation in some way, presumably to handle excessive peaks in the cases where normalisation resulted in the track's digital volume being boosted.

The limiter is (by definition) dependant on the digital levels being output towards the DAC. These are a product of both the levels in the original file and the digital volume setting. Hence, if the digital volume is reduced, the limiter can be avoided.

However, volume normalisation will still apply regardless of digital volume setting. The objective of volume normalisation is to make all tracks sound about the same level (regardless of digital volume setting) and it does this by raising or lowering the level of tracks relative to each other (actually it's relative to a given reference level).

As Peter has described elsewhere, this raising/lowering of level occurs across the whole track and is based on tags embedded into the track metadata in advance. So if track A is 6dB louder than track B, that will result in a level adjustment of up to 6dB on those tracks (either track A will be reduced, or Track B made louder, or a combination depending on the tags).

Note that I said "up to 6dB" as it's likely to be less be reduced due to headroom or volume scaling. For instance, if the digital volume control is at 50%, then both the tracks digital levels will have been scaled down and the difference between them isn't going 6dB any more (it's probably 3dB, but I've not done the math so don't take this as gospel).

I'm not sure if this explains the answer to your question.

One more thing, volume normalisation only takes place on tracks that have supported tags. Formats or sources that don't support volume normalisation tags will be unaffected by normalisation (although, apparently, the limiter still applies).

Cheers,

Keith