Commit Graph

27 Commits

Author SHA1 Message Date
Kyle Farnung 39c2885fd6 Probe .idx instead of .sub for external VobSub subtitle language detection
External VobSub subtitle pairs (.idx and .sub) were only probed via the
bare .sub file. In cases where multiple languages are present, this
results in missing language metadata.

Fix by detecting the matching .idx file during media info resolution
to run ffprobe on that file and skip processing the .sub entirely.
ffprobe will automatically find the matching (same directory,
case-sensitive base) .sub file and process both.

Added regression tests covering idx/sub pairing, unpaired files,
cross-directory pairs, and language-flagged filenames.

Fixes #17745
2026-08-30 17:29:49 -07:00
Gabriel Luci 6f2e42c20c Fix use of thread-unsafe List<T>.Sort() 2026-05-04 23:46:00 -04:00
Cody Robibero 712908d53c Revert nullability of MediaStream.IsHearingImpaired (#13573) 2025-02-17 19:20:18 -07:00
choyakawa fb69b976bf Fix the issue where the external audio track always defaults. (#13132) 2025-02-13 20:24:39 -07:00
JPVenson d073e2c664 Fixed invalid columns on MediaStreams 2024-11-12 23:53:05 +00:00
Cody Robibero 0bc41c015f Store lyrics in the database as media streams (#9951) 2024-02-26 05:09:40 -07:00
Bond_009 b62b0ec2b5 Fix warnings 2023-11-14 21:14:21 +01:00
Bond_009 52194f56b5 Replace != null with is not null 2022-12-05 15:01:13 +01:00
Jendrik Weise 21072310e7 Sort external files when scanning
Sorts files such as external subtitles or audio as well as metadata
Useful for deterministic display in the UI.
2022-11-04 15:16:27 +01:00
Joe Rogers 2e4db18ebe Add hearing impaired subtitle stream indicator (#7379)
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2022-10-07 12:38:05 +02:00
Bond-009 d771205544 Merge pull request #7988 from jellyfin/external-streams-exceptions
(cherry picked from commit a71b190142)
Signed-off-by: Joshua Boniface <joshua@boniface.me>
2022-06-29 01:26:38 -04:00
Cody Robibero 3a95d4b04e Merge pull request #7802 from jellyfin/external
(cherry picked from commit 9954cbd550)
Signed-off-by: crobibero <cody@robibe.ro>
2022-06-06 09:16:11 -04:00
Cody Robibero 9e380768dd Merge pull request #7527 from Shadowghost/mediaresolver-fix
(cherry picked from commit aa1b1c6bbb)
Signed-off-by: crobibero <cody@robibe.ro>
2022-04-07 12:54:58 -04:00
whiteowl3 669029595b Update MediaBrowser.Providers/MediaInfo/MediaInfoResolver.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2022-03-23 13:18:34 -04:00
whiteowl3 6f25291931 allow strm probe to succeed 2022-03-11 06:54:25 +00:00
Joe Rogers f7118bebfd Fix external file check for shorter names 2022-03-05 12:39:03 +01:00
Joe Rogers dad7a6fdf6 Switch to using spans for string comparison 2022-03-04 15:58:01 +01:00
Joe Rogers 3205e97e1e Strip out external file fuzzy matching
Convert MediaFlagDelimiter back to char
2022-03-04 10:52:21 +01:00
Cody Robibero 1b3e56bae3 Split DirectoryExists and FileExists 2022-03-02 19:55:44 -07:00
Cody Robibero fc5c6c0404 Use IFileSystem 2022-02-28 17:14:33 -07:00
Cody Robibero c9d5cfff1d Update MediaBrowser.Providers/MediaInfo/MediaInfoResolver.cs
Co-authored-by: Joe Rogers <1337joe@users.noreply.github.com>
2022-02-28 09:58:11 -07:00
Cody Robibero 40e413d575 Only add internal files if the internal metadata path exists
Signed-off-by: Cody Robibero <cody@robibe.ro>
2022-02-28 08:22:52 -07:00
Joe Rogers cf033b25f8 Require delimiter immediately after filename match 2022-02-21 22:27:28 +01:00
Joe Rogers 15053516f8 Rewrite tests for coverage and less duplication
Address minor warnings
Revert making GetInternalMetadataPath mockable
2022-02-21 22:25:58 +01:00
Shadowghost bbb3117f83 Update MediaBrowser.Providers/MediaInfo/MediaInfoResolver.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2022-02-19 23:47:11 +01:00
Shadowghost a36e34fbd2 fix(external-media): implement review suggestions 2022-02-18 22:19:33 +01:00
Shadowghost 719b707281 feat(external-media): refactor to generic provider, extend tests and file recognition, consolidate and extend NamingOptions 2022-02-18 22:19:33 +01:00