aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2016-01-11 21:55:52 -0500
committerLuke Pulverenti <luke.pulverenti@gmail.com>2016-01-11 21:55:52 -0500
commit8a2e023e28dd546641571dd24be721397c9ee9e1 (patch)
treea8b086e4bf154636393b76481150fc84fc3c21fc /MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs
parentba4ca10ae29a50ed452ed3d05f885b3fa81595e2 (diff)
parent355edfa2020d19b0fba6b09da40de4e66395d4b7 (diff)
Merge branch 'dev'
Conflicts: MediaBrowser.Controller/Entities/BaseItem.cs MediaBrowser.WebDashboard/dashboard-ui/bower_components/emby-apiclient/.bower.json MediaBrowser.WebDashboard/dashboard-ui/bower_components/emby-webcomponents/.bower.json MediaBrowser.WebDashboard/dashboard-ui/bower_components/iron-icons/.bower.json MediaBrowser.WebDashboard/dashboard-ui/bower_components/iron-icons/bower.json MediaBrowser.WebDashboard/dashboard-ui/strings/html/kk.json MediaBrowser.WebDashboard/dashboard-ui/strings/html/ru.json MediaBrowser.WebDashboard/dashboard-ui/strings/javascript/kk.json MediaBrowser.WebDashboard/dashboard-ui/strings/javascript/ru.json SharedVersion.cs
Diffstat (limited to 'MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs')
-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);
}