After fooling with Jellyfin’s SyncPlay feature it dawned on me that it would be nice to have a per client configurable sync strategy. I’ve not looked into SyncPlay’s implementation details but it looks to speedup/slowdown the playback if the delta between clients is within some threshold and then does a full “block everyone and resync position” otherwise. I’ve had numerous situations where Plex Watch Together seems to get in a loop of resync’ing all the clients. It would preferable if instead it sped up or slowed down the playback or perhaps allowed the trouble maker clients to become desync’ed and independently brought back into sync rather than holding the whole set back.
Watch/listening to altered speed media is not ideal but given the cost of resync it seems like a better strategy for some.
In windows, if your PC is out by up to 10s (I think) then it will do the same - adjust the clock speed slightly up or down so it can drift to the correct time as broadcast by the NTP server.
It’s only when it’s off by a larger amount that it’ll jump to the correct time.
I think the only way to do this is for the server to ping all the connected users in the watchparty and whoever has the shortest ping to the server will be the one the server uses to match the timestamp or frame and that all the clients need to match. That player becomes the Master TimeTracker if you will.
That way all the other players can drift up/down to match the Master TimeTracker.
If that person stops playback (not pause) and/or leaves then the new best ping to to the server becomes the new “Master TimeTracker”.
I recently held a Watch Together party for 6 transatlantic friends. Some were able to pre-download the media with the PlexPlayer and others (still on Win7) had to transcode through a browser.
Even though I re-coded the file to make it easier to share, it was still … problematic.
I agree that there should be an option that allows desynching the troublemaker or just resyncing their stream to everyone else’s instead of trying to sync everyone together and causing the looping.
I wouldn’t hold your breath. This Watch Together request has almost 300 upvotes just for a dev to post that they don’t plan on working on Watch Together because not enough people use it.
As noted in our previous announcement, our existing Watch Together functionality will not be included in our new experience apps on launch, which are currently in preview and will be released broadly in the future.
As such, we’re closing related feature suggestions in order to give back those votes, so that you can vote for something else.
We do not preclude the possibility of offering similar functionality again in the future, as we also noted in our announcement. Should that happen, then feature suggestions like this one and others would certainly be considered during that development.
A new suggestion related to adding Watch Together to our new experience apps has already been raised and you’re welcome to comment or vote on that suggestion.