aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Api/Playback/BaseStreamingService.cs
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2016-03-25 13:52:36 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2016-03-25 13:52:36 -0400
commitd9108f69f35080acb5ebefaefcd469595529afa2 (patch)
tree3f04e719877b9cdec9529ca34406b753f6492abc /MediaBrowser.Api/Playback/BaseStreamingService.cs
parentd6832e7a41c2a24f7dd998284e8e4f6eacf1d188 (diff)
parent72fe76ab1008f0bd38157cc37cde45797b5f6417 (diff)
Merge branch 'master' of https://github.com/MediaBrowser/Emby
Diffstat (limited to 'MediaBrowser.Api/Playback/BaseStreamingService.cs')
-rw-r--r--MediaBrowser.Api/Playback/BaseStreamingService.cs19
1 files changed, 15 insertions, 4 deletions
diff --git a/MediaBrowser.Api/Playback/BaseStreamingService.cs b/MediaBrowser.Api/Playback/BaseStreamingService.cs
index f66363da6..9d2c8c444 100644
--- a/MediaBrowser.Api/Playback/BaseStreamingService.cs
+++ b/MediaBrowser.Api/Playback/BaseStreamingService.cs
@@ -214,7 +214,7 @@ namespace MediaBrowser.Api.Playback
args += " -map -0:a";
}
- if (state.SubtitleStream == null)
+ if (state.SubtitleStream == null || state.VideoRequest.SubtitleMethod == SubtitleDeliveryMethod.Hls)
{
args += " -map -0:s";
}
@@ -477,7 +477,7 @@ namespace MediaBrowser.Api.Playback
var pts = string.Empty;
- if (state.SubtitleStream != null && state.SubtitleStream.IsTextSubtitleStream && !state.VideoRequest.CopyTimestamps)
+ if (state.SubtitleStream != null && state.SubtitleStream.IsTextSubtitleStream && state.VideoRequest.SubtitleMethod == SubtitleDeliveryMethod.Encode && !state.VideoRequest.CopyTimestamps)
{
var seconds = TimeSpan.FromTicks(state.Request.StartTimeTicks ?? 0).TotalSeconds;
@@ -575,7 +575,7 @@ namespace MediaBrowser.Api.Playback
var output = string.Empty;
- if (state.SubtitleStream != null && state.SubtitleStream.IsTextSubtitleStream)
+ if (state.SubtitleStream != null && state.SubtitleStream.IsTextSubtitleStream && state.VideoRequest.SubtitleMethod == SubtitleDeliveryMethod.Encode)
{
var subParam = GetTextSubtitleParam(state);
@@ -865,7 +865,7 @@ namespace MediaBrowser.Api.Playback
{
var arg = string.Format("-i {0}", GetInputPathArgument(state));
- if (state.SubtitleStream != null)
+ if (state.SubtitleStream != null && state.VideoRequest.SubtitleMethod == SubtitleDeliveryMethod.Encode)
{
if (state.SubtitleStream.IsExternal && !state.SubtitleStream.IsTextSubtitleStream)
{
@@ -1482,6 +1482,17 @@ namespace MediaBrowser.Api.Playback
videoRequest.CopyTimestamps = string.Equals("true", val, StringComparison.OrdinalIgnoreCase);
}
}
+ else if (i == 25)
+ {
+ if (!string.IsNullOrWhiteSpace(val) && videoRequest != null)
+ {
+ SubtitleDeliveryMethod method;
+ if (Enum.TryParse(val, out method))
+ {
+ videoRequest.SubtitleMethod = method;
+ }
+ }
+ }
}
}