aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--MediaBrowser.Server.Implementations/Sync/SyncManager.cs24
1 files changed, 23 insertions, 1 deletions
diff --git a/MediaBrowser.Server.Implementations/Sync/SyncManager.cs b/MediaBrowser.Server.Implementations/Sync/SyncManager.cs
index 0051447c0..a974a7675 100644
--- a/MediaBrowser.Server.Implementations/Sync/SyncManager.cs
+++ b/MediaBrowser.Server.Implementations/Sync/SyncManager.cs
@@ -1017,7 +1017,29 @@ namespace MediaBrowser.Server.Implementations.Sync
return hasProfile.GetDeviceProfile(target, quality);
}
- return new CloudSyncProfile(true, false);
+ return GetDefaultProfile(quality);
+ }
+
+ private DeviceProfile GetDefaultProfile(string quality)
+ {
+ var profile = new CloudSyncProfile(true, false);
+ var maxBitrate = profile.MaxStaticBitrate;
+
+ if (maxBitrate.HasValue)
+ {
+ if (string.Equals(quality, "medium", StringComparison.OrdinalIgnoreCase))
+ {
+ maxBitrate = Convert.ToInt32(maxBitrate.Value * .75);
+ }
+ else if (string.Equals(quality, "low", StringComparison.OrdinalIgnoreCase))
+ {
+ maxBitrate = Convert.ToInt32(maxBitrate.Value * .5);
+ }
+
+ profile.MaxStaticBitrate = maxBitrate;
+ }
+
+ return profile;
}
public IEnumerable<SyncQualityOption> GetQualityOptions(string targetId)