diff --git a/default.py b/default.py
index 94117d69..2a9ff290 100644
--- a/default.py
+++ b/default.py
@@ -102,7 +102,7 @@ class Main:
             # Other functions
             if mode == "settings":
                 xbmc.executebuiltin('Addon.OpenSettings(plugin.video.emby)')
-            elif mode in ("manualsync", "repair"):
+            elif mode in ("manualsync", "fastsync", "repair"):
                 if utils.window('emby_online') != "true":
                     # Server is not online, do not run the sync
                     xbmcgui.Dialog().ok(heading="Emby for Kodi",
@@ -116,6 +116,8 @@ class Main:
                     lib = librarysync.LibrarySync()
                     if mode == "manualsync":
                         librarysync.ManualSync().sync(dialog=True)
+                    elif mode == "fastsync":
+                        lib.startSync()
                     else:
                         lib.fullSync(repair=True)
                 else:
diff --git a/resources/language/English/strings.xml b/resources/language/English/strings.xml
index 78a94417..1a145adc 100644
--- a/resources/language/English/strings.xml
+++ b/resources/language/English/strings.xml
@@ -298,6 +298,8 @@
     <string id="30533">Duration of the music library pop up (in seconds)</string>
     <string id="30534">Server messages</string>
     <string id="30535">Generate a new device Id</string>
+    <string id="30536">Sync when screensaver is deactivated</string>
+    <string id="30537">Force Transcode Hi10P</string>    
 
     <!-- service add-on -->
     <string id="33000">Welcome</string>
diff --git a/resources/lib/kodimonitor.py b/resources/lib/kodimonitor.py
index f2b5ae86..ea1a4f17 100644
--- a/resources/lib/kodimonitor.py
+++ b/resources/lib/kodimonitor.py
@@ -205,5 +205,12 @@ class KodiMonitor(xbmc.Monitor):
             xbmc.sleep(10000)
             utils.window('emby_onWake', value="true")
 
+
+        elif method == "GUI.OnScreensaverDeactivated":
+            if utils.settings('dbSyncScreensaver') == "true":
+                xbmc.sleep(5000);
+                utils.window('emby_onWake', value="true")
+
+
         elif method == "Playlist.OnClear":
             pass
\ No newline at end of file
diff --git a/resources/lib/playutils.py b/resources/lib/playutils.py
index 622781d2..a1de2948 100644
--- a/resources/lib/playutils.py
+++ b/resources/lib/playutils.py
@@ -18,7 +18,6 @@ class PlayUtils():
     def __init__(self, item):
 
         self.item = item
-
         self.clientInfo = clientinfo.ClientInfo()
         self.addonName = self.clientInfo.getAddonName()
 
@@ -102,6 +101,11 @@ class PlayUtils():
 
         videotrack = self.item['MediaSources'][0]['Name']
         transcodeH265 = settings('transcodeH265')
+        videoprofiles = [x['Profile'] for x in self.item['MediaSources'][0]['MediaStreams'] if 'Profile' in x]
+        transcodeHi10P = utils.settings('transcodeHi10P')        
+
+        if transcodeHi10P == "true" and "H264" in videotrack and "High 10" in videoprofiles:
+            return False   
 
         if transcodeH265 in ("1", "2", "3") and ("HEVC" in videotrack or "H265" in videotrack):
             # Avoid H265/HEVC depending on the resolution
@@ -207,6 +211,11 @@ class PlayUtils():
 
         videotrack = self.item['MediaSources'][0]['Name']
         transcodeH265 = utils.settings('transcodeH265')
+        videoprofiles = [x['Profile'] for x in self.item['MediaSources'][0]['MediaStreams'] if 'Profile' in x]
+        transcodeHi10P = utils.settings('transcodeHi10P')        
+
+        if transcodeHi10P == "true" and "H264" in videotrack and "High 10" in videoprofiles:
+            return False   
 
         if transcodeH265 in ("1", "2", "3") and ("HEVC" in videotrack or "H265" in videotrack):
             # Avoid H265/HEVC depending on the resolution
@@ -423,4 +432,4 @@ class PlayUtils():
         else:
             playurlprefs += "&AudioBitrate=192000"
 
-        return playurlprefs
\ No newline at end of file
+        return playurlprefs
diff --git a/resources/settings.xml b/resources/settings.xml
index d5d815dc..77d57a33 100644
--- a/resources/settings.xml
+++ b/resources/settings.xml
@@ -32,6 +32,7 @@
 		<setting id="enableTextureCache" label="30512"  type="bool" default="true" />
         <setting id="imageCacheLimit" type="enum" label="30513" values="Disabled|5|10|15|20|25" default="0" visible="eq(-1,true)" subsetting="true" />
 		<setting id="syncEmptyShows" type="bool" label="30508" default="false" />
+		<setting id="dbSyncScreensaver" label="30536" type="bool" default="false" />
 		<setting id="useDirectPaths" type="enum" label="30511" values="Addon(Default)|Native(Direct paths)" default="0" />
 		<setting id="enableMusic" type="bool" label="30509" default="true" />
 		<setting id="streamMusic" type="bool" label="30510" default="false" visible="eq(-1,true)" subsetting="true" />
@@ -54,6 +55,7 @@
 	    <setting id="playFromStream" type="bool" label="30002" default="false" />
 	    <setting id="videoBitrate" type="enum" label="30160" values="664 Kbps SD|996 Kbps HD|1.3 Mbps HD|2.0 Mbps HD|3.2 Mbps HD|4.7 Mbps HD|6.2 Mbps HD|7.7 Mbps HD|9.2 Mbps HD|10.7 Mbps HD|12.2 Mbps HD|13.7 Mbps HD|15.2 Mbps HD|16.7 Mbps HD|18.2 Mbps HD|20.0 Mbps HD|40.0 Mbps HD|100.0 Mbps HD [default]|1000.0 Mbps HD" visible="true" default="17" subsetting="true" />
 	    <setting id="transcodeH265" type="enum" label="30522" default="0" values="Disabled|480p(and higher)|720p(and higher)|1080p" />
+	    <setting id="transcodeHi10P" type="bool" label="30537" default="false"/>	    
 	    <setting id="markPlayed" type="number" visible="false" default="90" />
 	    <setting id="failedCount" type="number" visible="false" default="0" />
 	    <setting id="networkCreds" type="text" visible="false" default="" />