diff --git a/MediaBrowser.Api/PluginService.cs b/MediaBrowser.Api/PluginService.cs
index 2d7444f60f..aead73def2 100644
--- a/MediaBrowser.Api/PluginService.cs
+++ b/MediaBrowser.Api/PluginService.cs
@@ -208,7 +208,7 @@ namespace MediaBrowser.Api
foreach (var plugin in result)
{
- var pkg = packages.FirstOrDefault(i => !string.IsNullOrWhiteSpace(i.guid) && new Guid(plugin.Id).Equals(new Guid(i.guid)));
+ var pkg = packages.FirstOrDefault(i => !string.IsNullOrWhiteSpace(i.guid) && string.Equals(i.guid.Replace("-", string.Empty), plugin.Id.Replace("-", string.Empty), StringComparison.OrdinalIgnoreCase));
if (pkg != null)
{
@@ -228,8 +228,9 @@ namespace MediaBrowser.Api
.ToList();
}
}
- catch
+ catch (Exception ex)
{
+ //Logger.ErrorException("Error getting plugin list", ex);
// Play it safe here
if (requireAppStoreEnabled)
{
diff --git a/MediaBrowser.Dlna/DlnaManager.cs b/MediaBrowser.Dlna/DlnaManager.cs
index 63a36744f1..dd5c4b77e7 100644
--- a/MediaBrowser.Dlna/DlnaManager.cs
+++ b/MediaBrowser.Dlna/DlnaManager.cs
@@ -488,7 +488,9 @@ namespace MediaBrowser.Dlna
var profile = GetProfile(headers) ??
GetDefaultProfile();
- return new DescriptionXmlBuilder(profile, serverUuId, serverAddress, _appHost.FriendlyName, serverUuId.GetMD5().ToString("N")).GetXml();
+ var serverId = _appHost.SystemId;
+
+ return new DescriptionXmlBuilder(profile, serverUuId, serverAddress, _appHost.FriendlyName, serverId).GetXml();
}
public ImageStream GetIcon(string filename)
diff --git a/MediaBrowser.Dlna/Main/DlnaEntryPoint.cs b/MediaBrowser.Dlna/Main/DlnaEntryPoint.cs
index d79ef9eafa..2133888b61 100644
--- a/MediaBrowser.Dlna/Main/DlnaEntryPoint.cs
+++ b/MediaBrowser.Dlna/Main/DlnaEntryPoint.cs
@@ -157,9 +157,9 @@ namespace MediaBrowser.Dlna.Main
//}
var addressString = address.ToString();
- var guid = addressString.GetMD5();
+ var udn = addressString.GetMD5().ToString("N");
- var descriptorURI = "/dlna/" + guid.ToString("N") + "/description.xml";
+ var descriptorURI = "/dlna/" + udn + "/description.xml";
var uri = new Uri(_appHost.GetLocalApiUrl(addressString) + descriptorURI);
@@ -170,12 +170,12 @@ namespace MediaBrowser.Dlna.Main
"urn:schemas-upnp-org:service:ContentDirectory:1",
"urn:schemas-upnp-org:service:ConnectionManager:1",
"urn:microsoft.com:service:X_MS_MediaReceiverRegistrar:1",
- "uuid:" + guid.ToString("N")
+ "uuid:" + udn
};
- _ssdpHandler.RegisterNotification(guid, uri, address, services);
+ _ssdpHandler.RegisterNotification(udn, uri, address, services);
- _registeredServerIds.Add(guid.ToString("N"));
+ _registeredServerIds.Add(udn);
}
}
@@ -240,7 +240,7 @@ namespace MediaBrowser.Dlna.Main
{
try
{
- _ssdpHandler.UnregisterNotification(new Guid(id));
+ _ssdpHandler.UnregisterNotification(id);
}
catch (Exception ex)
{
diff --git a/MediaBrowser.Dlna/Server/DescriptionXmlBuilder.cs b/MediaBrowser.Dlna/Server/DescriptionXmlBuilder.cs
index 281dee3e07..386370596c 100644
--- a/MediaBrowser.Dlna/Server/DescriptionXmlBuilder.cs
+++ b/MediaBrowser.Dlna/Server/DescriptionXmlBuilder.cs
@@ -122,7 +122,7 @@ namespace MediaBrowser.Dlna.Server
builder.Append("" + SecurityElement.Escape(_profile.SerialNumber) + "");
}
- builder.Append("uuid:" + SecurityElement.Escape(_serverId) + "");
+ builder.Append("uuid:" + SecurityElement.Escape(_serverUdn) + "");
builder.Append("" + SecurityElement.Escape(_serverAddress) + "");
if (!EnableAbsoluteUrls)
diff --git a/MediaBrowser.Dlna/Server/UpnpDevice.cs b/MediaBrowser.Dlna/Server/UpnpDevice.cs
index 870e3c24f9..10eaeb0535 100644
--- a/MediaBrowser.Dlna/Server/UpnpDevice.cs
+++ b/MediaBrowser.Dlna/Server/UpnpDevice.cs
@@ -8,10 +8,10 @@ namespace MediaBrowser.Dlna.Server
public readonly Uri Descriptor;
public readonly string Type;
public readonly string USN;
- public readonly Guid Uuid;
+ public readonly string Uuid;
public readonly IPAddress Address;
- public UpnpDevice(Guid aUuid, string aType, Uri aDescriptor, IPAddress address)
+ public UpnpDevice(string aUuid, string aType, Uri aDescriptor, IPAddress address)
{
Uuid = aUuid;
Type = aType;
@@ -25,7 +25,7 @@ namespace MediaBrowser.Dlna.Server
}
else
{
- USN = String.Format("uuid:{0}::{1}", Uuid.ToString("N"), Type);
+ USN = String.Format("uuid:{0}::{1}", Uuid, Type);
}
}
}
diff --git a/MediaBrowser.Dlna/Ssdp/SsdpHandler.cs b/MediaBrowser.Dlna/Ssdp/SsdpHandler.cs
index 82fc5e4665..881f70165e 100644
--- a/MediaBrowser.Dlna/Ssdp/SsdpHandler.cs
+++ b/MediaBrowser.Dlna/Ssdp/SsdpHandler.cs
@@ -36,7 +36,7 @@ namespace MediaBrowser.Dlna.Ssdp
private Timer _notificationTimer;
private bool _isDisposed;
- private readonly ConcurrentDictionary> _devices = new ConcurrentDictionary>();
+ private readonly ConcurrentDictionary> _devices = new ConcurrentDictionary>();
private readonly IApplicationHost _appHost;
@@ -451,7 +451,7 @@ namespace MediaBrowser.Dlna.Ssdp
SendDatagram(msg, _ssdpEndp, new IPEndPoint(dev.Address, 0), true);
}
- public void RegisterNotification(Guid uuid, Uri descriptionUri, IPAddress address, IEnumerable services)
+ public void RegisterNotification(string uuid, Uri descriptionUri, IPAddress address, IEnumerable services)
{
var list = _devices.GetOrAdd(uuid, new List());
@@ -461,7 +461,7 @@ namespace MediaBrowser.Dlna.Ssdp
_logger.Debug("Registered mount {0} at {1}", uuid, descriptionUri);
}
- public void UnregisterNotification(Guid uuid)
+ public void UnregisterNotification(string uuid)
{
List dl;
if (_devices.TryRemove(uuid, out dl))
diff --git a/MediaBrowser.Model/Configuration/UserConfiguration.cs b/MediaBrowser.Model/Configuration/UserConfiguration.cs
index 8199489096..d59974a2e8 100644
--- a/MediaBrowser.Model/Configuration/UserConfiguration.cs
+++ b/MediaBrowser.Model/Configuration/UserConfiguration.cs
@@ -42,8 +42,6 @@ namespace MediaBrowser.Model.Configuration
public bool IncludeTrailersInSuggestions { get; set; }
- public bool EnableCinemaMode { get; set; }
-
public string[] LatestItemsExcludes { get; set; }
public string[] PlainFolderViews { get; set; }
@@ -64,7 +62,6 @@ namespace MediaBrowser.Model.Configuration
PlainFolderViews = new string[] { };
IncludeTrailersInSuggestions = true;
- EnableCinemaMode = true;
GroupedFolders = new string[] { };
}
diff --git a/MediaBrowser.Server.Implementations/EntryPoints/UsageReporter.cs b/MediaBrowser.Server.Implementations/EntryPoints/UsageReporter.cs
index 47c7546430..be2817fd29 100644
--- a/MediaBrowser.Server.Implementations/EntryPoints/UsageReporter.cs
+++ b/MediaBrowser.Server.Implementations/EntryPoints/UsageReporter.cs
@@ -18,7 +18,7 @@ namespace MediaBrowser.Server.Implementations.EntryPoints
private readonly IHttpClient _httpClient;
private readonly IUserManager _userManager;
private readonly ILogger _logger;
- private const string MbAdminUrl = "https://www.mb3admin.com/admin/";
+ private const string MbAdminUrl = "http://www.mb3admin.com/admin/";
public UsageReporter(IApplicationHost applicationHost, IHttpClient httpClient, IUserManager userManager, ILogger logger)
{
diff --git a/MediaBrowser.Server.Implementations/HttpServer/ResponseFilter.cs b/MediaBrowser.Server.Implementations/HttpServer/ResponseFilter.cs
index 4ef9d52774..f993d4437a 100644
--- a/MediaBrowser.Server.Implementations/HttpServer/ResponseFilter.cs
+++ b/MediaBrowser.Server.Implementations/HttpServer/ResponseFilter.cs
@@ -61,6 +61,7 @@ namespace MediaBrowser.Server.Implementations.HttpServer
if (!hasOptions.Options.ContainsKey("Server"))
{
hasOptions.Options["Server"] = "Mono-HTTPAPI/1.1, UPnP/1.0 DLNADOC/1.50";
+ //hasOptions.Options["Server"] = "Mono-HTTPAPI/1.1";
}
// Content length has to be explicitly set on on HttpListenerResponse or it won't be happy
diff --git a/MediaBrowser.Server.Implementations/LiveTv/EmbyTV/EncodedRecorder.cs b/MediaBrowser.Server.Implementations/LiveTv/EmbyTV/EncodedRecorder.cs
index b4ff79567d..5f4d32732e 100644
--- a/MediaBrowser.Server.Implementations/LiveTv/EmbyTV/EncodedRecorder.cs
+++ b/MediaBrowser.Server.Implementations/LiveTv/EmbyTV/EncodedRecorder.cs
@@ -91,6 +91,8 @@ namespace MediaBrowser.Server.Implementations.LiveTv.EmbyTV
// Important - don't await the log task or we won't be able to kill ffmpeg when the user stops playback
StartStreamingLog(process.StandardError.BaseStream, _logFileStream);
+ onStarted();
+
// Wait for the file to exist before proceeeding
while (!_hasExited)
{
diff --git a/MediaBrowser.Server.Implementations/LiveTv/TunerHosts/SatIp/SatIpDiscovery.cs b/MediaBrowser.Server.Implementations/LiveTv/TunerHosts/SatIp/SatIpDiscovery.cs
index 95c04d61f3..08c42bb467 100644
--- a/MediaBrowser.Server.Implementations/LiveTv/TunerHosts/SatIp/SatIpDiscovery.cs
+++ b/MediaBrowser.Server.Implementations/LiveTv/TunerHosts/SatIp/SatIpDiscovery.cs
@@ -41,29 +41,21 @@ namespace MediaBrowser.Server.Implementations.LiveTv.TunerHosts.SatIp
void _deviceDiscovery_DeviceDiscovered(object sender, SsdpMessageEventArgs e)
{
- //string server = null;
- //if (e.Headers.TryGetValue("SERVER", out server) && server.IndexOf("HDHomeRun", StringComparison.OrdinalIgnoreCase) != -1)
- //{
- // string location;
- // if (e.Headers.TryGetValue("Location", out location))
- // {
- // //_logger.Debug("HdHomerun found at {0}", location);
+ string st = null;
+ if (e.Headers.TryGetValue("ST", out st) && string.Equals(st, "urn:ses-com:device:SatIPServer:1", StringComparison.OrdinalIgnoreCase))
+ {
+ string location;
+ if (e.Headers.TryGetValue("Location", out location) && !string.IsNullOrWhiteSpace(location))
+ {
+ _logger.Debug("SAT IP found at {0}", location);
- // // Just get the beginning of the url
- // Uri uri;
- // if (Uri.TryCreate(location, UriKind.Absolute, out uri))
- // {
- // var apiUrl = location.Replace(uri.LocalPath, String.Empty, StringComparison.OrdinalIgnoreCase)
- // .TrimEnd('/');
-
- // //_logger.Debug("HdHomerun api url: {0}", apiUrl);
- // AddDevice(apiUrl);
- // }
- // }
- //}
+ // Just get the beginning of the url
+ AddDevice(location);
+ }
+ }
}
- private async void AddDevice(string url)
+ private async void AddDevice(string location)
{
await _semaphore.WaitAsync().ConfigureAwait(false);
@@ -71,24 +63,24 @@ namespace MediaBrowser.Server.Implementations.LiveTv.TunerHosts.SatIp
{
var options = GetConfiguration();
- if (options.TunerHosts.Any(i =>
- string.Equals(i.Type, SatIpHost.DeviceType, StringComparison.OrdinalIgnoreCase) &&
- UriEquals(i.Url, url)))
- {
- return;
- }
+ //if (options.TunerHosts.Any(i =>
+ // string.Equals(i.Type, SatIpHost.DeviceType, StringComparison.OrdinalIgnoreCase) &&
+ // UriEquals(i.Url, url)))
+ //{
+ // return;
+ //}
- // Strip off the port
- url = new Uri(url).GetComponents(UriComponents.AbsoluteUri & ~UriComponents.Port, UriFormat.UriEscaped).TrimEnd('/');
+ //// Strip off the port
+ //url = new Uri(url).GetComponents(UriComponents.AbsoluteUri & ~UriComponents.Port, UriFormat.UriEscaped).TrimEnd('/');
- await TestUrl(url).ConfigureAwait(false);
-
- await _liveTvManager.SaveTunerHost(new TunerHostInfo
- {
- Type = SatIpHost.DeviceType,
- Url = url
+ //await TestUrl(url).ConfigureAwait(false);
- }).ConfigureAwait(false);
+ //await _liveTvManager.SaveTunerHost(new TunerHostInfo
+ //{
+ // Type = SatIpHost.DeviceType,
+ // Url = url
+
+ //}).ConfigureAwait(false);
}
catch (Exception ex)
{
diff --git a/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj b/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj
index 2dee8a5eda..5f2fab4571 100644
--- a/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj
+++ b/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj
@@ -45,8 +45,9 @@
False
..\packages\CommonIO.1.0.0.7\lib\net45\CommonIO.dll
-
- ..\packages\Emby.XmlTv.1.0.0.46\lib\net45\Emby.XmlTv.dll
+
+ False
+ ..\packages\Emby.XmlTv.1.0.0.48\lib\net45\Emby.XmlTv.dll
..\packages\Interfaces.IO.1.0.0.5\lib\portable-net45+sl4+wp71+win8+wpa81\Interfaces.IO.dll
diff --git a/MediaBrowser.Server.Implementations/packages.config b/MediaBrowser.Server.Implementations/packages.config
index 98c27786f2..816f85b428 100644
--- a/MediaBrowser.Server.Implementations/packages.config
+++ b/MediaBrowser.Server.Implementations/packages.config
@@ -1,7 +1,7 @@
-
+
diff --git a/MediaBrowser.Server.Startup.Common/FFMpeg/FFMpegDownloadInfo.cs b/MediaBrowser.Server.Startup.Common/FFMpeg/FFMpegDownloadInfo.cs
index 3b83e65b23..60cb50e30e 100644
--- a/MediaBrowser.Server.Startup.Common/FFMpeg/FFMpegDownloadInfo.cs
+++ b/MediaBrowser.Server.Startup.Common/FFMpeg/FFMpegDownloadInfo.cs
@@ -33,7 +33,7 @@ namespace MediaBrowser.Server.Startup.Common.FFMpeg
case OperatingSystem.Linux:
info.ArchiveType = "7z";
- info.Version = "20150917";
+ info.Version = "20160215";
break;
case OperatingSystem.Osx:
@@ -119,12 +119,12 @@ namespace MediaBrowser.Server.Startup.Common.FFMpeg
case Architecture.X86_X64:
return new[]
{
- "https://github.com/MediaBrowser/Emby.Resources/raw/master/ffmpeg/linux/ffmpeg-2.8.0-64bit-static.7z"
+ "https://github.com/MediaBrowser/Emby.Resources/raw/master/ffmpeg/linux/ffmpeg-git-20160215-64bit-static.7z"
};
case Architecture.X86:
return new[]
{
- "https://github.com/MediaBrowser/Emby.Resources/raw/master/ffmpeg/linux/ffmpeg-2.8.0-32bit-static.7z"
+ "https://github.com/MediaBrowser/Emby.Resources/raw/master/ffmpeg/linux/ffmpeg-git-20160215-32bit-static.7z"
};
case Architecture.Arm:
return new[]
diff --git a/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj b/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj
index 38e8e28bac..9de20cb396 100644
--- a/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj
+++ b/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj
@@ -113,6 +113,9 @@
PreserveNewest
+
+ PreserveNewest
+
PreserveNewest
@@ -511,9 +514,6 @@
PreserveNewest
-
- PreserveNewest
-
PreserveNewest
diff --git a/Nuget/MediaBrowser.Common.Internal.nuspec b/Nuget/MediaBrowser.Common.Internal.nuspec
index c4f2bd1307..0bb8c830fe 100644
--- a/Nuget/MediaBrowser.Common.Internal.nuspec
+++ b/Nuget/MediaBrowser.Common.Internal.nuspec
@@ -2,7 +2,7 @@
MediaBrowser.Common.Internal
- 3.0.641
+ 3.0.642
MediaBrowser.Common.Internal
Luke
ebr,Luke,scottisafool
@@ -12,7 +12,7 @@
Contains common components shared by Emby Theater and Emby Server. Not intended for plugin developer consumption.
Copyright © Emby 2013
-
+
diff --git a/Nuget/MediaBrowser.Common.nuspec b/Nuget/MediaBrowser.Common.nuspec
index 984e03342e..a290a424a4 100644
--- a/Nuget/MediaBrowser.Common.nuspec
+++ b/Nuget/MediaBrowser.Common.nuspec
@@ -2,7 +2,7 @@
MediaBrowser.Common
- 3.0.641
+ 3.0.642
MediaBrowser.Common
Emby Team
ebr,Luke,scottisafool
diff --git a/Nuget/MediaBrowser.Model.Signed.nuspec b/Nuget/MediaBrowser.Model.Signed.nuspec
index 2b0826670e..2017cc1ae5 100644
--- a/Nuget/MediaBrowser.Model.Signed.nuspec
+++ b/Nuget/MediaBrowser.Model.Signed.nuspec
@@ -2,7 +2,7 @@
MediaBrowser.Model.Signed
- 3.0.641
+ 3.0.642
MediaBrowser.Model - Signed Edition
Emby Team
ebr,Luke,scottisafool
diff --git a/Nuget/MediaBrowser.Server.Core.nuspec b/Nuget/MediaBrowser.Server.Core.nuspec
index 80d3bc1031..36c9ff4153 100644
--- a/Nuget/MediaBrowser.Server.Core.nuspec
+++ b/Nuget/MediaBrowser.Server.Core.nuspec
@@ -2,7 +2,7 @@
MediaBrowser.Server.Core
- 3.0.641
+ 3.0.642
Media Browser.Server.Core
Emby Team
ebr,Luke,scottisafool
@@ -12,7 +12,7 @@
Contains core components required to build plugins for Emby Server.
Copyright © Emby 2013
-
+