aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2017-09-23 21:03:46 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2017-09-23 21:03:46 -0400
commit39394e74c70f0b8fa9bd4415f6213edbd5ba04fd (patch)
tree80c4a7be4a02e37a6b2b5f339b9a0c090c437b08
parentf3120dbee98894fa5b488acccc611df6ad302540 (diff)
fix dlna direct play on samsung tv's
-rw-r--r--Emby.Server.Implementations/ApplicationHost.cs41
-rw-r--r--Emby.Server.Implementations/HttpServer/HttpResultFactory.cs2
-rw-r--r--MediaBrowser.Model/Configuration/EncodingOptions.cs3
-rw-r--r--MediaBrowser.Server.Mono/MonoAppHost.cs2
4 files changed, 33 insertions, 15 deletions
diff --git a/Emby.Server.Implementations/ApplicationHost.cs b/Emby.Server.Implementations/ApplicationHost.cs
index ba43c7f35..894d91f71 100644
--- a/Emby.Server.Implementations/ApplicationHost.cs
+++ b/Emby.Server.Implementations/ApplicationHost.cs
@@ -2211,19 +2211,36 @@ namespace Emby.Server.Implementations
TimeSpan.FromHours(12) :
TimeSpan.FromMinutes(5);
- var result = await new GithubUpdater(HttpClient, JsonSerializer).CheckForUpdateResult("MediaBrowser",
- "Emby",
- ApplicationVersion,
- updateLevel,
- ReleaseAssetFilename,
- "MBServer",
- UpdateTargetFileName,
- cacheLength,
- cancellationToken).ConfigureAwait(false);
-
- HasUpdateAvailable = result.IsUpdateAvailable;
+ try
+ {
+ var result = await new GithubUpdater(HttpClient, JsonSerializer).CheckForUpdateResult("MediaBrowser",
+ "Emby",
+ ApplicationVersion,
+ updateLevel,
+ ReleaseAssetFilename,
+ "MBServer",
+ UpdateTargetFileName,
+ cacheLength,
+ cancellationToken).ConfigureAwait(false);
- return result;
+ HasUpdateAvailable = result.IsUpdateAvailable;
+
+ return result;
+ }
+ catch (HttpException ex)
+ {
+ // users are overreacting to this occasionally failing
+ if (ex.StatusCode.HasValue && ex.StatusCode.Value == HttpStatusCode.Forbidden)
+ {
+ HasUpdateAvailable = false;
+ return new CheckForUpdateResult
+ {
+ IsUpdateAvailable = false
+ };
+ }
+
+ throw;
+ }
}
protected virtual string UpdateTargetFileName
diff --git a/Emby.Server.Implementations/HttpServer/HttpResultFactory.cs b/Emby.Server.Implementations/HttpServer/HttpResultFactory.cs
index 3e0565343..b06a6a887 100644
--- a/Emby.Server.Implementations/HttpServer/HttpResultFactory.cs
+++ b/Emby.Server.Implementations/HttpServer/HttpResultFactory.cs
@@ -533,7 +533,7 @@ namespace Emby.Server.Implementations.HttpServer
{
stream.Dispose();
- return GetHttpResult(new byte[] { }, contentType, true);
+ return GetHttpResult(new byte[] { }, contentType, true, responseHeaders);
}
var hasHeaders = new StreamWriter(stream, contentType, _logger)
diff --git a/MediaBrowser.Model/Configuration/EncodingOptions.cs b/MediaBrowser.Model/Configuration/EncodingOptions.cs
index a143bb9e3..fbc5e1b37 100644
--- a/MediaBrowser.Model/Configuration/EncodingOptions.cs
+++ b/MediaBrowser.Model/Configuration/EncodingOptions.cs
@@ -25,7 +25,8 @@ namespace MediaBrowser.Model.Configuration
EnableThrottling = true;
ThrottleDelaySeconds = 180;
EncodingThreadCount = -1;
- VaapiDevice = "/dev/dri/card0";
+ // This is a DRM device that is almost guaranteed to be there on every intel platform, plus it's the default one in ffmpeg if you don't specify anything
+ VaapiDevice = "/dev/dri/renderD128";
H264Crf = 23;
EnableHardwareEncoding = true;
EnableSubtitleExtraction = true;
diff --git a/MediaBrowser.Server.Mono/MonoAppHost.cs b/MediaBrowser.Server.Mono/MonoAppHost.cs
index ded7bb5f3..fe684d928 100644
--- a/MediaBrowser.Server.Mono/MonoAppHost.cs
+++ b/MediaBrowser.Server.Mono/MonoAppHost.cs
@@ -26,7 +26,7 @@ namespace MediaBrowser.Server.Mono
get
{
// A restart script must be provided
- return StartupOptions.ContainsOption("-restartpath");
+ return false;
}
}