aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Server.Implementations/MediaEncoder/MediaEncoder.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Server.Implementations/MediaEncoder/MediaEncoder.cs')
-rw-r--r--MediaBrowser.Server.Implementations/MediaEncoder/MediaEncoder.cs28
1 files changed, 28 insertions, 0 deletions
diff --git a/MediaBrowser.Server.Implementations/MediaEncoder/MediaEncoder.cs b/MediaBrowser.Server.Implementations/MediaEncoder/MediaEncoder.cs
index d02031fe6..f42e9c6ae 100644
--- a/MediaBrowser.Server.Implementations/MediaEncoder/MediaEncoder.cs
+++ b/MediaBrowser.Server.Implementations/MediaEncoder/MediaEncoder.cs
@@ -682,6 +682,7 @@ namespace MediaBrowser.Server.Implementations.MediaEncoder
throw new ApplicationException(msg);
}
+ await SetAssFont(outputPath).ConfigureAwait(false);
}
/// <summary>
@@ -843,6 +844,33 @@ namespace MediaBrowser.Server.Implementations.MediaEncoder
throw new ApplicationException(msg);
}
+
+ await SetAssFont(outputPath).ConfigureAwait(false);
+ }
+
+ /// <summary>
+ /// Sets the ass font.
+ /// </summary>
+ /// <param name="file">The file.</param>
+ /// <returns>Task.</returns>
+ private async Task SetAssFont(string file)
+ {
+ string text;
+ Encoding encoding;
+
+ using (var reader = new StreamReader(file, detectEncodingFromByteOrderMarks: true))
+ {
+ encoding = reader.CurrentEncoding;
+
+ text = await reader.ReadToEndAsync().ConfigureAwait(false);
+ }
+
+ text = text.Replace(",Arial,", ",Arial Unicode MS,");
+
+ using (var writer = new StreamWriter(file, false, encoding))
+ {
+ writer.Write(text);
+ }
}
/// <summary>