From 8295f15ab83709e73da5507d74a4fd8d819b9de9 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Tue, 7 May 2013 13:07:57 -0400 Subject: fixes #110 - Edit .ass file style --- .../MediaEncoder/MediaEncoder.cs | 28 ++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'MediaBrowser.Server.Implementations/MediaEncoder/MediaEncoder.cs') 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); } /// @@ -843,6 +844,33 @@ namespace MediaBrowser.Server.Implementations.MediaEncoder throw new ApplicationException(msg); } + + await SetAssFont(outputPath).ConfigureAwait(false); + } + + /// + /// Sets the ass font. + /// + /// The file. + /// Task. + 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); + } } /// -- cgit v1.2.3 From 0934a9ca766ae6794e7e8aa506ebf48c63a25526 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Tue, 7 May 2013 15:18:47 -0400 Subject: only update .ass file if contents will be different --- MediaBrowser.Server.Implementations/MediaEncoder/MediaEncoder.cs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'MediaBrowser.Server.Implementations/MediaEncoder/MediaEncoder.cs') diff --git a/MediaBrowser.Server.Implementations/MediaEncoder/MediaEncoder.cs b/MediaBrowser.Server.Implementations/MediaEncoder/MediaEncoder.cs index f42e9c6ae..ce39ffc06 100644 --- a/MediaBrowser.Server.Implementations/MediaEncoder/MediaEncoder.cs +++ b/MediaBrowser.Server.Implementations/MediaEncoder/MediaEncoder.cs @@ -865,11 +865,14 @@ namespace MediaBrowser.Server.Implementations.MediaEncoder text = await reader.ReadToEndAsync().ConfigureAwait(false); } - text = text.Replace(",Arial,", ",Arial Unicode MS,"); + var newText = text.Replace(",Arial,", ",Arial Unicode MS,"); - using (var writer = new StreamWriter(file, false, encoding)) + if (!string.Equals(text, newText)) { - writer.Write(text); + using (var writer = new StreamWriter(file, false, encoding)) + { + writer.Write(newText); + } } } -- cgit v1.2.3