aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.MediaEncoding
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2015-01-21 14:21:19 -0500
committerLuke Pulverenti <luke.pulverenti@gmail.com>2015-01-21 14:21:19 -0500
commit7bc370bdc72df5dac395b8fee805284b845ed911 (patch)
tree55a1679f012c6a0780bc5e40d8ea4339a5041244 /MediaBrowser.MediaEncoding
parent6ccd86d0c1760a39ad96fc6db31234296da1d162 (diff)
move desktop search
Diffstat (limited to 'MediaBrowser.MediaEncoding')
-rw-r--r--MediaBrowser.MediaEncoding/Subtitles/SrtParser.cs17
-rw-r--r--MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs2
2 files changed, 18 insertions, 1 deletions
diff --git a/MediaBrowser.MediaEncoding/Subtitles/SrtParser.cs b/MediaBrowser.MediaEncoding/Subtitles/SrtParser.cs
index ad7db8ddf..9751176cb 100644
--- a/MediaBrowser.MediaEncoding/Subtitles/SrtParser.cs
+++ b/MediaBrowser.MediaEncoding/Subtitles/SrtParser.cs
@@ -1,4 +1,5 @@
using MediaBrowser.Model.Extensions;
+using MediaBrowser.Model.Logging;
using System;
using System.Collections.Generic;
using System.Globalization;
@@ -10,7 +11,15 @@ namespace MediaBrowser.MediaEncoding.Subtitles
{
public class SrtParser : ISubtitleParser
{
+ private readonly ILogger _logger;
+
private readonly CultureInfo _usCulture = new CultureInfo("en-US");
+
+ public SrtParser(ILogger logger)
+ {
+ _logger = logger;
+ }
+
public SubtitleTrackInfo Parse(Stream stream, CancellationToken cancellationToken)
{
var trackInfo = new SubtitleTrackInfo();
@@ -34,6 +43,14 @@ namespace MediaBrowser.MediaEncoding.Subtitles
}
var time = Regex.Split(line, @"[\t ]*-->[\t ]*");
+
+ if (time.Length < 2)
+ {
+ // This occurs when subtitle text has an empty line as part of the text.
+ // Need to adjust the break statement below to resolve this.
+ _logger.Warn("Unrecognized line in srt: {0}", line);
+ continue;
+ }
subEvent.StartPositionTicks = GetTicks(time[0]);
var endTime = time[1];
var idx = endTime.IndexOf(" ", StringComparison.Ordinal);
diff --git a/MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs b/MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs
index 4723525e3..b9cad27e0 100644
--- a/MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs
+++ b/MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs
@@ -270,7 +270,7 @@ namespace MediaBrowser.MediaEncoding.Subtitles
if (string.Equals(format, SubtitleFormat.SRT, StringComparison.OrdinalIgnoreCase))
{
- return new SrtParser();
+ return new SrtParser(_logger);
}
if (string.Equals(format, SubtitleFormat.SSA, StringComparison.OrdinalIgnoreCase))
{