Hi All,
I have been travelling quite a bit recently and the one thing that really puts a strain on my viewing habits is the harsh selection of sync options that is available. Let me explain better.
Imagine you have just watched the last available (synced) episode of your favourite show on your device. Of course you synced it at the highest possible quality, as you are at home your ethernet/wifi connection is fast enough to support syncing the 1.5GB file.
While you are still travelling a new episode comes out. As Plex is running in the background and you are probably connected to some Wifi (likely a free one, so probably 2-5MBit max) it’ll try and sync the new 1.5Gb file to your device. Now at 2-5MBit we are talking anything from 45 min to 2h, and that is uninterrupted as a network error will cause a full resync of that given file. So if you are unlucky you have to try 5-10 times before the episode gets synced.
I know that there have been feature requests to be able to turn off automatic sync, but here I’d rather want a different option.
To enable the correct sync method Plex should look at the following 3 points:
- Am I connected locally or am I somewhere else (technically it already knows that!!!) and
- How fast is my connection to that particular server (that is holding the file) really. (Something like speedtest.net does for your internet connection).
- Am I currently watching something already that might interfere with a sync operation. (This third point technically is checked at point 2 as the speed would likely be relatively low - low thresholds could be established either by point 2 or a min available bandwidth option on the client side)
Now the way I’d like plex to sync is the following. Imagine I have a sync job that gets me the next available episode for a given show which for example I have at 1080p and 7MBit.
If I am currently watching a stream from my server at X MBit and the remaining bandwidth would allow a decent copy to be transferred in a reasonable time (i.e. I set my min bandwidth option at 2MBit 720p) then continue sync if not disable sync until a later time.
If I am not watching a stream and the connection is good enough, calculate rough time to transfer given file, if it takes more than 2 times the runtime at provided setting (i.e. Original) transcode and send a minimum bandwidth quality setting file to speed up sync. (If I can’t sync, I’d likely watch that episode transcoding anyways).
If I am not watching anything and the connection is rubbish (2MBit/s) and this is below lowest bandwidth setting, disable sync.
In a local setting this would likely always leave room for an Original quality sync, however to make sure this always happens, local networks should be excluded from this.
Plex should always transfer the best possible quality if synced, but if I am away and my server upload is limited then plex should adjust quality based on that. Whether it is the way I have described or a different smarter way I don’t mind :).
Best Wishes
chaos