Browse Source

Backport pull request #9671 from jellyfin/release-10.8.z

Fix the canvas size for DVBSUB and DVDSUB subtitles

Original-merge: eba95cc7f0304ebc9c1a8c0fc11a29ffca6fc97d

Merged-by: Joshua M. Boniface <joshua@boniface.me>

Backported-by: Bond_009 <bond.009@outlook.com>
nyanmisaka 2 years ago
parent
commit
fdc16e23c4
1 changed files with 4 additions and 1 deletions
  1. 4 1
      MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs

+ 4 - 1
MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs

@@ -755,9 +755,12 @@ namespace MediaBrowser.Controller.MediaEncoding
 
 
         public string GetGraphicalSubCanvasSize(EncodingJobInfo state)
         public string GetGraphicalSubCanvasSize(EncodingJobInfo state)
         {
         {
+            // DVBSUB and DVDSUB use the fixed canvas size 720x576
             if (state.SubtitleStream is not null
             if (state.SubtitleStream is not null
                 && state.SubtitleDeliveryMethod == SubtitleDeliveryMethod.Encode
                 && state.SubtitleDeliveryMethod == SubtitleDeliveryMethod.Encode
-                && !state.SubtitleStream.IsTextSubtitleStream)
+                && !state.SubtitleStream.IsTextSubtitleStream
+                && !string.Equals(state.SubtitleStream.Codec, "DVBSUB", StringComparison.OrdinalIgnoreCase)
+                && !string.Equals(state.SubtitleStream.Codec, "DVDSUB", StringComparison.OrdinalIgnoreCase))
             {
             {
                 var inW = state.VideoStream?.Width;
                 var inW = state.VideoStream?.Width;
                 var inH = state.VideoStream?.Height;
                 var inH = state.VideoStream?.Height;