Delay compensation when used with AV receivers



Show first post
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.

144 replies

... if it did then we just tell them not to. 🙂

So it's OK to tell them not to *change* DSP, but not OK to tell them not to use it in the first place. Got it. :)

I just can't see Sonos implementing something that requires 'regular tune-ups'. They've always defaulted to 'easy to use' over 'does everything possible'. I look at feature requests through my wife's eyes. She never used my pre-Sonos equipment -- too many buttons and knobs and dials and meters -- but she uses Sonos literally every day, because it just works, all the time, every time. If I have to tell her she can group the family room to the living room but it requires occasionally adjusting some geek setting buried somewhere in the Controller, she just won't use it.

I hope they figure out something; some of us have receivers with everything in the digital domain -- even volume -- so sync with one of those is impossible even when the DSP is off. But it won't be at the expense of the user experience.
... their system might have to be "tuned up" every once in awhile to keep it aligned. Especially since that tune up would only take a couple of minutes to do.



A few of the geek types might tune up, but I don't think that a majority of users would view this as a "feature". Personally, I can be "geek" when I need to be, but I just want the music to play -- while I'm geeking something else. For me the music system setup should be a one time event.

With respect to 200ms here and 100ms there, one would need to delay everything by the longest latency, then add the difference in individual rooms. Changing the global delay as rooms are added or deleted from a Group would create a little glitch that sticklers like me would not appreciate.
Userlevel 2
Badge
So it's OK to tell them not to *change* DSP, but not OK to tell them not to use it in the first place. Got it. :)

Except that on some receivers it's not simply a matter of turning off DSP. Some receivers will introduce a delay no matter what the settings which is why every quality television these days features a lip-sync setting -- to delay the picture enough to match what sound the receiver is playing.

I just can't see Sonos implementing something that requires 'regular tune-ups'. They've always defaulted to 'easy to use' over 'does everything possible'.

In fairness, I don't actually BELIEVE that it would require any tuning up. Buzz presented a scenario (which I think unlikely) and I responded with a just-in-case fix. Dismissing the feature based on the existence of a fix for a remote scenario would be like me suggesting we have steak on the grill for dinner, Buzz asking what happens if the steak is undercooked and we get food poisoning and me responding that while I don't think it's likely, if it does happen we'd either vomit or go to the hospital and have our stomachs pumped out. Then you step in and say, "I don't think we should plan dinner around something that makes us vomit or visit the ER." :-)

I hope they figure out something; some of us have receivers with everything in the digital domain -- even volume -- so sync with one of those is impossible even when the DSP is off. But it won't be at the expense of the user experience.

Not sure what you mean by sync being impossible unless you're saying that your receiver is like the ones I described above where there's always a delay in which case, let's be honest . . . slowing down the other zones by SOME mechanism is the only thing that's ever going to solve it.

For those who disagree with me that the "tune up" is actually a highly unlikely need, ask yourself this: "Other than when you got your TV, when was the last time you had to "tune up" the lip sync setting on your TV. Once the timing is right it stays right.
Userlevel 2
Badge
A few of the geek types might tune up, but I don't think that a majority of users would view this as a "feature".

Per my answer above, I DO think it would be a one-time event and like all the other equalization settings it would only be there for when someone needs it. Again, this is FAR better than the current scenario of those who have the delay being unable to use their systems fully.

With respect to 200ms here and 100ms there, one would need to delay everything by the longest latency, then add the difference in individual rooms. Changing the global delay as rooms are added or deleted from a Group would create a little glitch that sticklers like me would not appreciate.


I think either way could work, the reason I preferred mine is that 99% of the time I'll bet most zones are NOT grouped with a delayed zone so there would be no need to buffer at all. By your method every zone would have to be buffered at every moment of play, even in rooms that were never part of a group. While the processing overhead is probably minimal, remember that the buffer will also affect (necessarily) control. So when you switch to a different song manually in a 300 ms delayed zone group, there is by necessity a 300 ms delay before Sonos can start playing that song (it can't buffer what it doesn't know you're going to select).

Since the delays we're talking about are all measured in milliseconds, in reality adding an extra 100 ms delay to the music when you bring in a new zone is inaudible. Spread it out over the 2 or 3 seconds it takes to bring the new zone online and you're talking about (100 ms / 2500 ms = 4%) a 4% slowdown in the pace of the music across a few seconds.

Slingbox does this when you first connect to a box, but they're doing it with 15 seconds of content building up in buffer across the first minute or two and it's still barely noticeable in the playback speed. In short, there wouldn't need to be a glitch/silence/gap/hiccup. More like a few seconds of an imperceptible shift in tempo.

Again, either method would work, but mine improves control responsiveness during what (for my clients at least) is the 99% of time when they're listening in a zone or group of zones that do NOT include a delay.

BTW, I realize in pointing out that the majority of listening is not affected by this issue (my 99% comment) that I open myself to the valid point that this is a minor issue. The problem is that the 1% of the time where all the zones are grouped together is for parties. And when 100 people are mingling through a Sonos customer's house, that would seem to be the EXACT time that Sonos would not want their system to sound like some crummy out-of-sync system with an aggravating "echo".
... ask yourself this: "Other than when you got your TV, when was the last time you had to "tune up" the lip sync setting on your TV. Once the timing is right it stays right.

One of the reasons that I rarely watch TV is poor lip sync. In my experience it varies from station to station and often from show to show or commercial to show. I'll sometimes watch or listen, but doing both simultaneously is too distracting for me. Curiously, the movie channels and streaming services usually have better sync.
Userlevel 2
Badge
One of the reasons that I rarely watch TV is poor lip sync. In my experience it varies from station to station and often from show to show or commercial to show. I'll sometimes watch or listen, but doing both simultaneously is too distracting for me. Curiously, the movie channels and streaming services usually have better sync.

Are you saying that if you're watching on a TV screen with TV speakers you have sync problems? Or that your receiver introduces delays that differ from one channel to another? In any case, the proper test of whether Sonos's sync would need to be tuned up over time is whether your receiver, once properly time synced to a particular DVD (for example) would always play that DVD correctly or whether the receiver "drifts" over time to come out of sync. And I'm pretty sure in 100% of cases it's the former.
jbs,

Absolutely. Every TV I have encountered since the digital migration exhibits poor lip sync. This is not always the TV's fault. Most of the delay is built into the program or the cable box. I can observe the delays on direct antenna reception. Even in the days before the old analog standard was discarded, an analog set that had no delay suddenly had a delay after the TV station switched their processing chain to digital.

I haven't noticed receivers or TV's "drifting", but a firmware update might shuffle the deck. Some receivers allow storing a delay with each input. On the YAMAHA receivers you may be able to use "Scenes" to do what you need to do. Of course, a visiting teen could update the scenes and cause trouble. If you are using a universal remote, at least on the higher YAMAHA models, you can keep a step ahead of the teen.

None of this will protect me from source changes. I would want to tinker with the delay after every channel change on the TV.

Anyway, I think that one should use a SONOS CONNECT:AMP and automatic speaker relays to share the speakers. This allows both the receiver and the SONOS system to do what they do best, system operation is straight forward, and there are no SONOS related latency issues due to receiver processing.
Userlevel 2
Badge
buzz,

I'm sure we both have better things to do that beat this horse to death 🙂 but if your lipsync issue is with digital TV then it makes my point that receivers, once time synced, won't drift.

And frankly, anybody who updates their receiver firmware (practically nobody) is going to be comfortable tweaking the Sonos sync timing (again in the remote scenario it's needed).

Nobody is going to BUY a new receiver to be able to use their Sonos zone. Instead clients just skip Sonos in the home theatre (lost revenue for me and for Sonos). And the laws of physics dictate that if the receiver is doing anything that delays the sound, then the ONLY thing that will get the sound in sync is to SLOW DOWN the other Sonos zones. This is not a complex scenario -- either remove the receiver delay or match it in the other zones, there's no other way to skin the cat in this instance. 🙂 (sorry cat lovers). And since we've already agreed that some receivers introduce a delay NO MATTER WHAT SETTING, that means we're down to one cat skinning option.

Finally, understand that in your last scenario you're suggesting that disconnecting ceileing/wall speakers from the receiver, inserting a new ($$) relay and upgrading to a Connect Amp ($$$$) vs Connect ($$) is *better* than a dozen lines of code in the software to manage the delay. Oh, and most of the speaker relays I've seen are actually IR or RS232 controlled, meant to be programmed into the automation system. I assume you mean some kind of relay that automatically knows which source to turn to, but what does it do when both turn on? The only reliable ones are prorgammed into the home control or universal remote, but now we're talking about even more $$$. As a dealer I'd be embarassed to suggest that to a client because it would look so blatantly like I was trying to pad the bill, plus I'm introducing new points of failure, new connections, messing with an existing setup that works fine. No, instead I'll just continue to avoid the Connect until and unless there's a Sonos software fix.
jbs,

There is no need for signal sensing. Many receivers offer a 12V trigger that can directly operate speaker relays from NILES and others.
Userlevel 2
Badge
jbs,

There is no need for signal sensing. Many receivers offer a 12V trigger that can directly operate speaker relays from NILES and others.


Except as far as I know all the Niles speaker relays are stereo only. I don't see any 5 or 5.1 channel relays which means you'd only be using 2 of your 5.1 / 7.1 or more speakers for Sonos.

One of the great things about Sonos in a home theatre is that many receivers do a very nice job turning stereo music into a virtual surround field or at the very least spreading the music across the full set of speakers.

The software approach to this problem preserves that capability but the speaker relay (on top of all the added cost and complexity) does not.

I swear I'm not trying to be stubborn or a jerk here and usually even if I think I'm right I can understand why an opposing point of view makes sense to others. But in this case I'm struggling to see why instead of a simple software tweak you would prefer:
  1. A more expensive player (Amp vs Connect)
  2. Adding multiple connections to the speaker run
  3. Adding a new piece of equipment (speaker relay)
  4. Wiring the speaker relay into the system
  5. Wiring the speaker relay control signal
  6. Giving up 60% or more of your speakers when using Sonos.


Doesn't that seem like a LOT of trouble and expense vs:
  • Delay the other zones by xxx milliseconds
jbs,

ADA offers a one box product.

Certainly the software approach is less cash outlay, but from an operational/usability standpoint, using a CONNECT with an A/V receiver is simply too complicated for most users to grasp. Even if the primary user can deal with the situation, a house guest will be facing an enigma.

If the receiver offers IP control, it is possible to use an "app" on a smart phone or pad and offer a seamless operational experience without adding any hardware, but at a programming cost to the consumer.
Userlevel 2
Badge
jbs,

ADA offers a one box product.

Certainly the software approach is less cash outlay, but from an operational/usability standpoint, using a CONNECT with an A/V receiver is simply too complicated for most users to grasp. Even if the primary user can deal with the situation, a house guest will be facing an enigma.

If the receiver offers IP control, it is possible to use a "app" on a smart phone or pad and offer a seamless operational experience without adding any hardware, but at a programming cost to the consumer.


The one box product (the MORB-1) still doesn't solve the problem since it does not create the surround sound that the receiver would have. You'd be left with manually splicing the Sonos LEFT output into 2 or more of the LEFT speaker inputs in the MORB and the right into 2 or more RIGHT inputs, potentially damaging speakers or the Sonos Amp if (like me) you have 7.1 surround with different channels having different speaker specifications. And where does the center channel go?

The argument you're making is really about the Sonos Connect itself. It sounds like you're arguing against the existence of the Connect at all then, is that right? Since afaik it's only PURPOSE is to play through an AV receiver (or something like it) then if turning on a receiver is too complicated for most users (and I don't agree that it is, but for the sake of argument) there would truly never be an instance when the Connect would be a good option (which would of course also solve the sync problem) ;-)

In my view it's easy to make the Connect a perfectly accessible Sonos zone, especially in conjunction with a universal remote (and I'd say 95% of the customers to whom we sell receivers we also sell a Logitech Harmony remote). One button on the remote is "Sonos". Press the button and now the Sonos controller works just like any zone. When they're done they can press the Off button on the Harmony. Even a houseguest could do it ;-)

Just to come back to the original topic, this is an INCREDIBLY easy problem to solve. No hardware is needed, no physical rewiring, no changing of the receiver setup, no changing of ANYTHING except a single, simple addition to the Sonos equalization settings panel that says, "This zone delays sound by xxx milliseconds."

One setting, some very simple backend buffering, and the problem is solved. I simply can't imagine why someone would prefer hundreds of dollars worth of new equipment, labor, programming time, etc to the setting of one OPTIONAL field in Sonos. I'll bet 99% of Sonos users have never even LOOKED at the Equalization panel, so it would affect them NOT ONE BIT. But when a dealer is setting up a system, he/she could EASILY solve what's otherwise an embarrassing problem. And when a DIY customer calls Sonos tech support, they could EASILY walk the user through solving the problem. And when a DIY customer posts a complaint on this forum, any of us could EASILY walk the user through solving the problem.

Do you really want to walk a user through discarding their Connect, buying a Connect Amp, buying a MORB, splicing into their speaker wires, adding a 12V control circuit, possibly frying their new Connect:Amp, etc etc etc?

vs this:

"Go into "Room Settings", tap on the Equalization panel and then pull the "This zone delays" slider to the right until everything sounds good.

I really don't know what else I can say here. If anyone else is still following the thread I'd love some other input to see if I'm missing the point here . . .

"Go into "Room Settings", tap on the Equalization panel and then pull the "This zone delays" slider to the right until everything sounds good.



But, we would then need to explain why users who don't have a CONNECT attached to an A/V receiver should avoid using this control.

All I am suggesting is that the feature will be a little quirky and we should be careful what we wish for.
Userlevel 2
Badge
But, we would then need to explain why users who don't have a CONNECT attached to an A/V receiver should avoid using this control.

All I am suggesting is that the feature will be a little quirky and we should be careful what we wish for.


Actually the setting would ONLY show up for a Connect, not on any other equipment (this is already how settings like "Create Stereo Pair" work, they only show up on rooms with the relevant player). And a Connect is (almost) ALWAYS attached to a receiver or some other processing device.

Do you currently have to explain to users why they should not use the "Create Stereo Pair" button? Of course not. This is the beauty of having the setting buried on a screen where 99% of users never go. It's there to solve the problem when it comes up, or when a dealer sets up the system, but nobody's talking about putting it on the VOLUME CONTROL page where users stumble across it 10 times a day!

As I said, 99% of our Sonos clients have never SEEN the Room Settings panel. Adding an option would have ZERO impact on them, just like "Loudness" "Create Stereo Pair" and "Line Out Level".

Besides, if the description is "This rooms sound lags behind the rest of the house by xxx milliseconds (default: zero)" then even if someone DID stumble upon it, there is ZERO likelihood that, absent some problem they've noticed, that they're going to think, "Oh, I should really go and adjust this setting for the hell of it".

I certainly agree with you that the addition of any new feature or setting should be weighed carefully against the risk that somebody screws it up. But in this case the problem is HUGE for a certin subset of users and can be fixed with a VERY minor tweak that 99% of users are never going to see and the other 1% will have no reason to change unnecessarily. You and I disagree on whether it's better to risk what I see as a very small chance of someone choosing to modify a setting buried 3 screens deep on one of their rooms or to have their system sound crappy every time they try and play music throughout the house. It's not a close call for me.
If anyone else is still following the thread I'd love some other input to see if I'm missing the point here . . .
I can see both sides of the argument but I certainly agree with you that a hardware based solution would not only be much more complicated but also very expensive.

But, we would then need to explain why users who don't have a CONNECT attached to an A/V receiver should avoid using this control.

Easily overcome by having the settings available through a "secret" menu - maybe browser based e.g. xx.xx.xx.xx:1400/avdelayconfig.htm rather than even having to go via a controller? Assuming of course that this would usually be used by expert installers and wouldn't need constant adjustment.
Userlevel 2
Badge
Easily overcome by having the settings available through a "secret" menu - maybe browser based e.g. xx.xx.xx.xx:1400/avdelayconfig.htm rather than even having to go via a controller? Assuming of course that this would usually be used by expert installers and wouldn't need constant adjustment.

Thanks Gaz. Anticipating an objection to differentiating a DIY vs dealer feature (something which I assume Sonos wants to avoid or they wouldn't be making such a DIY pitch in their marketing) it could also be avoided with a couple more sentences in the controller page I described before.

"This rooms sound lags behind the rest of the house by xxx milliseconds (default: zero)" then even if someone DID stumble upon it, there is ZERO likelihood that, absent some problem they've noticed, that they're going to think, "Oh, I should really go and adjust this setting for the hell of it".


Let's say even THIS control only popped up after a screen that says, "Some receivers and home theatre systems take a few fractions of a second to process audio. If you notice that Sonos coming through your receiver lags slightly behind your other Sonos zones, click here and we'll adjust the rest of the system to match that delay. If you haven't heard a problem, then your receiver is fine and you don't need to do anything more. Enjoy!"

Hopefully we can all agree that even the world's most meddlesome and intellectually challenged end user would have no inclination -- in the event he/she ever even got to the equalization screen, to click through both those screens and intentionally foul up his system.

Again, I agree that any changes to the features and interface should be carefully considered, but everything in this approach can be solved with a tiny one-time change to the Sonos software, instead of pushing thousands of dollars of unnecessary costs onto each Sonos customer affected, which in the end just means most of them are going to skip the zone or have a poorly performing system.

Hopefully we can all agree that even the world's most meddlesome and intellectually challenged end user would have no inclination -- ...


Don't under estimate the customer's imagination. An unbelievable number of consumers proudly boast that they don't read instructions -- they'll just keep clicking things till the box works the way that they think the box should work, or take it back if they can't click their way out. SONOS will factor the cost of future support costs into any potential feature addition.

... instead of pushing thousands of dollars of unnecessary costs onto each Sonos customer affected,...

In my opinion it is hundreds at most for the relay boxes and the delta between CONNECT and CONNECT:AMP is $150.00. If a fancy remote plus programming is used to cure the operational issues for the less savvy user, the total costs for the CONNECT scheme will probably be higher than the CONNECT:AMP/Relay scheme. These CONNECT operational issues will be present with or without the delay feature.
Userlevel 2
Badge
Aside from the exorbitant cost and complexity of the amp solution, remember that the amp solution also leaves us with only 2 or 4 speakers, no center channel, no surround field where the "xxx ms" solution gives far superior sound and takes advantage of the full array of speakers in the room. Is that a concern for you?

Don't under estimate the customer's imagination. An unbelievable number of consumers proudly boast that they don't read instructions -- they'll just keep clicking things till the box works the way that they think the box should work, or take it back if they can't click their way out. SONOS will factor the cost of future support costs into any potential feature addition.

So you're still saying that in spite of the description I've laid out you think people will go in and intentionally change something called "the receiver in this room delays the sound relative to other Sonos zones". OK, I'll leave that one for others to decide. I'm relieved to say that every one of my customers is smart enough not to do that, so lucky me. ;-)

In my opinion it is hundreds at most for the relay boxes and the delta between CONNECT and CONNECT:AMP is $150.00. If a fancy remote plus programming is used to cure the operational issues for the less savvy user, the total costs for the CONNECT scheme will probably be higher than the CONNECT:AMP/Relay scheme. These CONNECT operational issues will be present with or without the delay feature.

Hundreds for the equipment perhaps but I'm assuming you don't expect me to disassemble their home theatre and splice into all their speakers for free, right? 😉 But even if it's "only" $800, that's an $800 complex solution with inferior 2-channel audio versus my free solution with full depth surround. Why pay more for less? The "fancy remote" is not being used to cure operational issues. It's an excellent product in its own right. As I've said before in this thread, I don't tend to push the Connect because of this flaw. It represents less than 5% of our Sonos unit sales. Yet I still sell a Harmony remote with nearly every receiver becasue it's a great product and most people don't want to have 5 remotes on their coffee table or home theatre seat. I brought it up to address your houseguest example but it's in no way an incremental cost of the FREE "xxx ms" solution.

I can't help but feel like there's some other concern you have that's driving this because I've read enough of your posts here to know how knowledgeable you are about this stuff and yet for some reason the huge chasm I see in the appeal between the two solutions seems to be completely reversed for you. Perhaps we're both just a bit dug in, and we can just leave it to others to evaluate which solution works better for them. The plethora of +1's the thread has gotten over the years at least reassures me that I'm not the only one that likes the delay approach. Now that Sonos has implemented this delay (albeit in reverse) for the Playbar, hopefully they'll give us that option in the Connect soon as well. When they do I've got a list of all my clients with nice home theatres and no music and I'll be buying a big lot of Connects to go back and revisit each one of them.

--Jason
FWIW over on ask.sonos.com this issue is marked as 'under consideration'.
Badge
Having been forced to sell two nice DAC equipped units (one HK CD player, one dedicated) due to the missing lines of code (I'm a programmer, yes) I feel the need to chip in my

I did research (DIY and commercial) analog delays but couldn't see Sonos not implementing this down the line.. it's been 6-7 years.

Our setup is only 2 zones but we have them on radio in party mode 50-75% and I guess I'm not alone in frequently using the feature "group zones" in this system..

IMHO the Sonos menu system are full of choices and settings "normal users" (read; non technical that just likes music) could get wrong; "Line-Out Level",
"Local Music Servers" etc. but most people tend to stay away from changing stuff they don't understand or seem to need. That argument is null in my book.

The plethora of +1's the thread has gotten over the years at least reassures me that I'm not the only one that likes the delay approach. Now that Sonos has implemented this delay (albeit in reverse) for the Playbar, hopefully they'll give us that option in the Connect soon as well.

It won't bring my fine sounding DACs back but at least I can stop telling friends NOT to buy a Sonos system if they have an AVR and thinking about more than one zone... and most have both of those things :/

Sorry if I come across a bit sour, but this thread is soon 8 years old and now having some thread of hope for this simple addition being bombarded with non-arguments and convoluted objections makes me.. sour.
Userlevel 2
+ 1 on that great idea.

"Go into "Room Settings", tap on the Equalization panel and then pull the "This zone delays" slider to the right until everything sounds good.

Perfect way to match a slowed-down A/V receiver.

The implementation would require some memory (less than a Gig of ram) and a bit of processing in the Sonos equipment to buffer/delay the streaming signal.

New CONNECT/bridge components would probably need to be developped for that requirement.
Userlevel 2
Badge
+ 1 on that great idea.


Thanks!

Perfect way to match a slowed-down A/V receiver.

The implementation would require some memory (less than a Gig of ram) and a bit of processing in the Sonos equipment to buffer/delay the streaming signal.

New CONNECT/bridge components would probably need to be developped for that requirement.


I'm no engineer (but I play one on TV!) but I can't imagine that there's not the capability in the existing players to do this. I'd assume it's a non-starter if the current players are not capable of it. I don't think an enhancement is likely if it doesn't work on the installed base of millions of players.

That said, everything that's reaching the players is digital and is being converted at the player. The highest bandwidth content straming to a SONOS player is probably a FLAC file at about 5 MB per minute or about 85 kilobytes per second. Since the mot aggressive processing inside a receiver *still* only seems to slow things down by a fraction of a second, we should never be talking about more than a couple hundred kilobytes of buffered content. And that's with the combination of worst case delay and worst case file size.

Now that I think about it, I was listening to Spotify the other day and unplugged the Sonos bridge to move it. To my amazement the music continued for (I believe) a good 10~15 seconds even when the Bridge was down, so it would seem that the capacity to buffer is already more than adequate (my apologies if I've bungled any of the mechanics of this).

--Jason
My feeling is the players are probably capable of doing this, but there's probably quite a bit of complexity to deal with which makes it a major undertaking.

For instance, there are likely to be cases where the customer has multiple receivers, all which require a slightly different delay. In this case the system will need to implement a delay which at least covers the biggest delay in the system. It will have to delay all Sonos devices (including any Connect:AMP, Play:3, Play:5) by this delay, with Connect devices being delayed individually to suit their local requirements (nominally the system delay minus their local delay setting).

On top of this, the GUI needs to make it easy to set individual settings per Connect.

The extreme case is the customer has 32 zones of Connect devices with each connected to receivers with slightly different delays. This is, of course, a highly improbable case, but it is one that they would probably have to engineer to support on the basis that any real word scenarios will then easily be accommodated.

None of this is impossible, but there are some complexities involved which will require significant resources to develop and test.

Sonos has a finite resource for software development and testing and has to use it wisely. Clearly at the moment this particular feature hasn't yet been seen as high enough priority compared to other developments.

Cheers,

Keith
Userlevel 2
Badge
For instance, there are likely to be cases where the customer has multiple receivers, all which require a slightly different delay. In this case the system will need to implement a delay which at least covers the biggest delay in the system. It will have to delay all Sonos devices (including any Connect:AMP, Play:3, Play:5) by this delay, with Connect devices being delayed individually to suit their local requirements (nominally the system delay minus their local delay setting).

The first time I commented in this thread (oh, lo these many years) I was thinking of the same sityation:

I especially liked the suggestion above to allow each zone to have its own configurable "I delay by xx ms" setting. This is far better than having to manually adjust each other zone to add a delay.

It also takes care of a system with TWO zones with surround sound receivers. For example, if the Theatre adds 200 ms and the living room adds 100 ms, then when both zones are included in the party Sonos can delay the living room by 100 ms and all other zones in the house by 200 ms, but if the Theatre is not in the party then everything EXCEPT the living room gets a 100 ms delay.


And obviously 2 is an arbitrary number of zones. It could just as easily be 3, 4 or (in a ridiculous case) 32. The math couldn't be simpler. Every zone has a piece of metadata called LocalDelay. Then every zone in the Sonos buffers by [(Max(LocalDelay) - (LocalDelay)] milliseconds.

The extreme case is the customer has 32 zones of Connect devices with each connected to receivers with slightly different delays. This is, of course, a highly improbable case, but it is one that they would probably have to engineer to support on the basis that any real word scenarios will then easily be accommodated.

I still don't see think that makes [(Max(LocalDelay) - (LocalDelay)] especially complex, but I suspect we can all agree that such a hypothetical goes well beyond improbable. 🙂 So let Sonos look through their data and see what's the largest number of Connects that's ever been in a group before (remember, this only matters in a group), then double it and make that the limit to the number of distinct Connect delays on an existing system. Maybe it's 5, maybe it's 10. The point is nobody's ever going to reach it and if someone buys 32 connects just for the privilege of complaining they can pick from among the existing 5 or 10 delays the one that most closely matches their 11th zone.

Depending on how broad the range of delays is, and how narrow a delay a skilled listener can still here (is it 1 millisecond? 10? 100?) Sonos could choose to implement this with a dropdown instead of a slider. i.e. "This zone delays by xx milliseconds" and drop down to choose from 50, 100, 150, 200, 250, 300, 350, 400, etc etc etc.
I think you've missed my point.

Whilst it appears to be possible to implement and, the maths isn't hard, the low-level code to manage buffers and retain relative sync in real-time across multiple zones whilst implemented that math is probably a significant thing to implement, bearing in mind that most other vendors have struggled to get basic sync working reliably.

And, more importantly, it will involve many man months of development, debugging, and testing resource. That has to come from somewhere.

In well-managed development teams, this resource comes from one place only: being one of the most important development projects on the list.

Clearly, so far, this feature hasn't made that shortlist.

Cheers,

Keith