aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs
diff options
context:
space:
mode:
authorPiotr Niełacny <piotr.nielacny@gmail.com>2026-03-24 14:26:25 +0100
committerPiotr Niełacny <piotr.nielacny@gmail.com>2026-05-19 13:03:07 +0200
commit405d987557b2638afc89edf3dff20360e39cb09a (patch)
treeba756d44d0853db68ffe8c8b98a1bfeaace482bf /MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs
parenta15b426e73afb46d7337b98f8279e83847e20f2d (diff)
Normalize VobSub .sub to .idx for embedding, add EncodingHelper tests
Move the .sub to .idx path normalization outside the burn-in check so it applies to subtitle embedding as well. ffmpeg requires the .idx file to read VobSub subtitles. Add unit tests for GetMapArgs and GetInputArgument covering internal subs, external SRT, multi-file SRT, multi-stream MKS containers, and VobSub .sub/.idx path normalization.
Diffstat (limited to 'MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs')
-rw-r--r--MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs16
1 files changed, 6 insertions, 10 deletions
diff --git a/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs b/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs
index 40bb3913e9..6ff2873cc5 100644
--- a/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs
+++ b/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs
@@ -1272,18 +1272,14 @@ namespace MediaBrowser.Controller.MediaEncoding
var subtitlePath = state.SubtitleStream.Path;
var isGraphicalBurnIn = ShouldEncodeSubtitle(state) && !state.SubtitleStream.IsTextSubtitleStream;
- if (isGraphicalBurnIn)
+ // dvdsub/vobsub graphical subtitles use .sub+.idx pairs
+ var subtitleExtension = Path.GetExtension(subtitlePath.AsSpan());
+ if (subtitleExtension.Equals(".sub", StringComparison.OrdinalIgnoreCase))
{
- var subtitleExtension = Path.GetExtension(subtitlePath.AsSpan());
-
- // dvdsub/vobsub graphical subtitles use .sub+.idx pairs
- if (subtitleExtension.Equals(".sub", StringComparison.OrdinalIgnoreCase))
+ var idxFile = Path.ChangeExtension(subtitlePath, ".idx");
+ if (File.Exists(idxFile))
{
- var idxFile = Path.ChangeExtension(subtitlePath, ".idx");
- if (File.Exists(idxFile))
- {
- subtitlePath = idxFile;
- }
+ subtitlePath = idxFile;
}
}