Index: Core/Player/BaseTSReaderPlayer.cs
===================================================================
--- Core/Player/BaseTSReaderPlayer.cs	(revision 27395)
+++ Core/Player/BaseTSReaderPlayer.cs	(working copy)
@@ -422,7 +422,8 @@
       _speedRate = 10000;
       _isLive = false;
       _duration = -1d;
-      if (strFile.ToLower().IndexOf(".tsbuffer") >= 0)
+      if ((strFile.ToLower().IndexOf(".tsbuffer") >= 0)
+          || (strFile.ToLower().IndexOf(".tshift") >= 0))
       {
         Log.Info("TSReaderPlayer: live tv");
         _isLive = true;
Index: Core/Player/PlayerFactory.cs
===================================================================
--- Core/Player/PlayerFactory.cs	(revision 27395)
+++ Core/Player/PlayerFactory.cs	(working copy)
@@ -269,7 +269,7 @@
 
           string extension = Path.GetExtension(aFileName).ToLower();
           if (extension != ".tv" && extension != ".sbe" && extension != ".dvr-ms" &&
-              aFileName.ToLower().IndexOf(".tsbuffer") < 0 && aFileName.ToLower().IndexOf("radio.tsbuffer") < 0)
+              aFileName.ToLower().IndexOf(".tsbuffer") < 0 && aFileName.ToLower().IndexOf(".tshift") < 0 && aFileName.ToLower().IndexOf("radio.tsbuffer") < 0)
           {
             IPlayer newPlayer = GetExternalPlayer(aFileName);
             if (newPlayer != null)
@@ -299,7 +299,7 @@
           }
 
           // Use TsReader for timeshift buffer file for TvEngine3 & .ts recordings etc.
-          if (extension == ".tsbuffer" || extension == ".ts" || extension == ".rec")
+          if (extension == ".tsbuffer" || extension == ".tshift" || extension == ".ts" || extension == ".rec")
             //new support for Topfield recordings
           {
             if (aFileName.ToLower().IndexOf("radio.tsbuffer") >= 0)
Index: Core/Util/Util.cs
===================================================================
--- Core/Util/Util.cs	(revision 27395)
+++ Core/Util/Util.cs	(working copy)
@@ -171,7 +171,7 @@
     {
       using (Profile.Settings xmlreader = new Profile.MPSettings())
       {
-        m_bHideExtensions = xmlreader.GetValueAsBool("gui", "hideextensions", true);
+        m_bHideExtensions = xmlreader.GetValueAsBool("general", "hideextensions", true);
         string artistNamePrefixes = xmlreader.GetValueAsString("musicfiles", "artistprefixes", "The, Les, Die");
         _artistNamePrefixes = artistNamePrefixes.Split(',');
 
@@ -210,7 +210,7 @@
           }
         }
 
-        enableGuiSounds = xmlreader.GetValueAsBool("gui", "enableguisounds", true);
+        enableGuiSounds = xmlreader.GetValueAsBool("general", "enableguisounds", true);
       }
     }
 
@@ -361,7 +361,12 @@
     {
       if (strPath == null) return false;
 
-      Match ex = Regex.Match(strPath, @"(live\d+-\d+\.ts(\.tsbuffer(\d+\.ts)?)?)$");
+      Match ex = Regex.Match(strPath, @"(live\d+-\d+\.ts(\.tshift(\d+\.ts)?)?)$");
+      if (ex.Success)
+      {
+          return true;
+      }
+      ex = Regex.Match(strPath, @"(live\d+-\d+\.ts(\.tsbuffer(\d+\.ts)?)?)$");
       return ex.Success;
     }
 
@@ -2701,7 +2706,7 @@
       {
         using (Settings xmlreader = new MPSettings())
         {
-          _fileLookUpCacheEnabled = xmlreader.GetValueAsBool("gui", "fileexistscache", false);
+          _fileLookUpCacheEnabled = xmlreader.GetValueAsBool("general", "fileexistscache", false);
         }
       }
       return (_fileLookUpCacheEnabled.HasValue && _fileLookUpCacheEnabled.Value);
Index: WindowPlugins/GUIMusic/GUIMusicOverlay.cs
===================================================================
--- WindowPlugins/GUIMusic/GUIMusicOverlay.cs	(revision 27395)
+++ WindowPlugins/GUIMusic/GUIMusicOverlay.cs	(working copy)
@@ -148,7 +148,8 @@
 
       if (g_Player.Playing)
       {
-        if (g_Player.CurrentFile.Contains(".tsbuffer")) // timeshifting via TVServer ?
+        if (g_Player.CurrentFile.Contains(".tsbuffer")
+            || g_Player.CurrentFile.Contains(".tshift")) // timeshifting via TVServer ?
         {
           PlayListItem pitem = playlistPlayer.GetCurrentItem();
           if (pitem != null)
@@ -496,6 +497,7 @@
         string coverart;
         // check if radio via TVPlugin
         if (strFName.EndsWith(".tsbuffer", StringComparison.InvariantCultureIgnoreCase) ||
+            strFName.EndsWith(".tshift", StringComparison.InvariantCultureIgnoreCase) ||
             strFName.StartsWith("rtsp://", StringComparison.InvariantCultureIgnoreCase))
         {
           // yes
