aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.MediaEncoding
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2016-02-01 22:22:18 -0500
committerLuke Pulverenti <luke.pulverenti@gmail.com>2016-02-01 22:22:18 -0500
commit16de4de0035fcd1f394324aacb040e67de52529a (patch)
tree523416a4d410cb84a97555593c3c187168dd54e3 /MediaBrowser.MediaEncoding
parent11e5d194b41cabf5a9320198d2b61484aba00115 (diff)
parent1cdb420d2e815baa16e52ddef056b947716e37bb (diff)
Merge branch 'dev' into beta
Diffstat (limited to 'MediaBrowser.MediaEncoding')
-rw-r--r--MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs23
1 files changed, 20 insertions, 3 deletions
diff --git a/MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs b/MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs
index ba44ed7dd..882b2e1c2 100644
--- a/MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs
+++ b/MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs
@@ -122,10 +122,15 @@ namespace MediaBrowser.MediaEncoding.Subtitles
var subtitle = await GetSubtitleStream(itemId, mediaSourceId, subtitleStreamIndex, cancellationToken)
.ConfigureAwait(false);
- using (var stream = subtitle.Item1)
+ var inputFormat = subtitle.Item2;
+
+ if (string.Equals(inputFormat, outputFormat, StringComparison.OrdinalIgnoreCase) && TryGetWriter(outputFormat) == null)
{
- var inputFormat = subtitle.Item2;
+ return subtitle.Item1;
+ }
+ using (var stream = subtitle.Item1)
+ {
return await ConvertSubtitles(stream, inputFormat, outputFormat, startTimeTicks, endTimeTicks, cancellationToken).ConfigureAwait(false);
}
}
@@ -288,7 +293,7 @@ namespace MediaBrowser.MediaEncoding.Subtitles
return null;
}
- private ISubtitleWriter GetWriter(string format)
+ private ISubtitleWriter TryGetWriter(string format)
{
if (string.IsNullOrEmpty(format))
{
@@ -312,6 +317,18 @@ namespace MediaBrowser.MediaEncoding.Subtitles
return new TtmlWriter();
}
+ return null;
+ }
+
+ private ISubtitleWriter GetWriter(string format)
+ {
+ var writer = TryGetWriter(format);
+
+ if (writer != null)
+ {
+ return writer;
+ }
+
throw new ArgumentException("Unsupported format: " + format);
}