aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Model
AgeCommit message (Collapse)Author
2026-04-11Merge pull request #16380 from LTe/fix-subtitle-extraction-settingBond-009
Respect EnableSubtitleExtraction setting in subtitle delivery
2026-04-11Merge pull request #16567 from shocklateboy92/fix/iso639-2-language-displayBond-009
Fix language display for ISO 639-2-only codes (e.g. mul, und, mis, zxx)
2026-04-09Merge pull request #16456 from joshuaboniface/fix-path-filesystem-logicJoshua M. Boniface
2026-04-08Fix language display for ISO 639-2-only codes (e.g. mul, und)Lasath Fernando
LoadCultures() in LocalizationManager skipped all iso6392.txt entries without a two-letter ISO 639-1 code, dropping 302 of 496 languages including mul (Multiple languages), und (Undetermined), mis (Uncoded languages), zxx, and many real languages like Achinese, Akkadian, etc. This caused FindLanguageInfo() to return null for these codes, which meant: - ExternalPathParser could not recognize them as valid language codes in subtitle filenames, so the Language field was never set - DisplayTitle fell back to the raw code string (e.g. "Mul") Fix by allowing entries without two-letter codes to be loaded with an empty TwoLetterISOLanguageName. Also set LocalizedLanguage in ProbeResultNormalizer for ffprobe-detected streams (the DB repository path was already handled on master).
2026-04-02Add AlbumNormalizationGain field to BaseItemDtoHeroBrine1st Erquilenne
2026-03-29Only set IsAvc for video streamsBond_009
Also enables nullable for MediaStreamInfo Makes more properties nullable that aren't always present
2026-03-24Fix linting issueJoshua M. Boniface
2026-03-23Update FolderStorageInfo recordJoshua M. Boniface
2026-03-13Merge pull request #16368 from redinsch/fix/image-language-priorityBond-009
Fix remote image language priority to prefer English over no-language
2026-03-13Respect EnableSubtitleExtraction setting in subtitle deliveryPiotr Niełacny
Wire up EnableSubtitleExtraction config to MediaEncoder.CanExtractSubtitles so the setting is actually respected. Gate subtitle extraction check behind PlayMethod.Transcode since DirectPlay has no competing ffmpeg process. Add parameterized tests for StreamBuilder.GetSubtitleProfile covering text and graphical codecs, profile format matching, and extraction setting behavior. Remove misplaced SubtitleEncoder extraction test.
2026-03-11Use generic Enum overloads to resolve CA2263 warningsjaxx2104
Replace Enum.Parse(typeof(T), ...) and Enum.GetNames(typeof(T)) with their generic counterparts Enum.Parse<T>() and Enum.GetNames<T>() in MediaBrowser.Model/Dlna for improved type safety. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-08Fix remote image language priority to prefer English over no-languageredinsch
Previously, images with no language were ranked higher (score 3) than English images (score 2), causing poorly rated languageless images to be selected over well-rated English alternatives for posters and logos. Swap the priority so English is preferred over no-language images. Backdrop images are unaffected as they have their own dedicated sorting. Add unit tests for OrderByLanguageDescending. Fixes #13310
2026-02-26Merge pull request #16255 from cosu/fix/streaminfo-malformed-query-stringBond-009
Fix malformed query string in StreamInfo.ToUrl() causing 500 error via proxies
2026-02-18Fix malformed query string in StreamInfo.ToUrl() causing 500 error via proxiesCosmin Dumitru
StreamInfo.ToUrl() generated URLs like `/master.m3u8?&DeviceId=...` (note `?&`) because `?` was appended to the path and all parameters started with `&`. When the first optional parameter (DeviceProfileId) was null, the result was a malformed query string. This is harmless when clients hit Jellyfin directly (ASP.NET Core tolerates `?&`), but when accessed through a reverse proxy that parses and re-serializes the URL (e.g. Home Assistant ingress via aiohttp/yarl), `?&` becomes `?=&` — introducing an empty-key query parameter. ParseStreamOptions then crashes on `param.Key[0]` with IndexOutOfRangeException. Changes: - StreamInfo.ToUrl(): Track query start position and replace the first `&` with `?` after all parameters are appended, producing valid query strings - ParseStreamOptions: Guard against empty query parameter keys - Tests: Remove .Replace("?&", "?") workaround that masked the bug Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15Fix buildBond_009
2026-01-27Merge pull request #16110 from nielsvanvelzen/api-deprNiels van Velzen
Remove some deprecated API members
2026-01-27Remove unused usingsNiels van Velzen
2026-01-26Merge pull request #14809 from lostb1t/fix/subtitleencoderNiels van Velzen
fix: prevent premature disposal of HTTP subtitle streams
2026-01-25Remove some deprecated API membersNiels van Velzen
2026-01-18Fix zh-CN subtitle language display (#15947)Bond-009
The DisplayTitle property was using .NET's CultureInfo.GetCultures(NeutralCultures) to resolve language display names. Since zh-CN is a specific culture (not neutral), it would fall back to the base 'zh' code, resulting in generic 'Chinese' instead of 'Chinese (Simplified)'. This change adds a LocalizedLanguage property to MediaStream that gets populated via LocalizationManager.FindLanguageInfo() when streams are retrieved from the database. This leverages Jellyfin's existing iso6392.txt mappings which correctly map zh-CN to 'Chinese (Simplified)'. The same pattern is already used for other localized strings like LocalizedDefault and LocalizedExternal.
2026-01-18Merge pull request #15926 from abitofevrything/feat/accurate_hls_seekingAbitofevrything
Refactor HLS transcode seeking
2026-01-14Update to .NET 10.0Bond_009
2026-01-05Fix zh-CN subtitle language displayZeusCraft10
The DisplayTitle property was using .NET's CultureInfo.GetCultures(NeutralCultures) to resolve language display names. Since zh-CN is a specific culture (not neutral), it would fall back to the base 'zh' code, resulting in generic 'Chinese' instead of 'Chinese (Simplified)'. This change adds a LocalizedLanguage property to MediaStream that gets populated via LocalizationManager.FindLanguageInfo() when streams are retrieved from the database. This leverages Jellyfin's existing iso6392.txt mappings which correctly map zh-CN to 'Chinese (Simplified)'. The same pattern is already used for other localized strings like LocalizedDefault and LocalizedExternal.
2025-12-31Optimize StringHelper.ToFirstUpper()stevenaw
2025-12-21wiplostb1t
2025-12-21wiplostb1t
2025-12-08Add ability to sort and filter activity log entries (#15583)Cody Robibero
2025-12-02Merge pull request #15538 from KarkaLT/masterNiels van Velzen
Add subtitle extraction timeout configuration option
2025-11-27Merge pull request #13977 from sususu98/fix/strm-local-subtitle-urlNiels van Velzen
refactor(StreamInfo): reorganize subtitle URL logic and conditions
2025-11-27Merge pull request #14950 from nielsvanvelzen/security-remove-has-passwordNiels van Velzen
Deprecate HasPassword property on UserDto
2025-11-18Disable legacy authorization methods by defaultNiels van Velzen
2025-11-17Add subtitle extraction timeout configuration optionKarolis
2025-11-02Backport pull request #15254 from jellyfin/release-10.11.zthornbill
Update password reset to always return the same response structure Original-merge: 4ad31418753840ca76c52fc2aa56fa1a4235ca87 Merged-by: crobibero <cody@robibe.ro> Backported-by: Joshua M. Boniface <joshua@boniface.me>
2025-10-26Bump version to 10.12.0 (for real this time)Joshua M. Boniface
2025-10-05Deprecate HasPassword property on UserDtoNiels van Velzen
2025-08-11Refactor to pull item counts in a single queryCody Robibero
2025-08-03Merge pull request #14410 from dyphire/languageJoshua M. Boniface
Further refinement of BCP 47 language labeling support
2025-07-30Further refinement of BCP 47 language labeling supportdyphire
2025-07-14vob file support (#14471)FJOX.win
2025-06-24Adapt LrcLyricParser to new LrcParser version (#14263)Max Rumpf
2025-06-16Use dto instead of db object when returning trickplayCody Robibero
2025-06-15Use square root scaling for high framerate videos' bitrate requirements (#14314)v10.11.0-rc2gnattu
2025-06-10Fix existing media segments not being handled on scan (#14218)ThunderClapLP
2025-06-09fix(Session): don't query DB if queue hasn't changed (#14244)Sid K
2025-06-01Merge pull request #13145 from SenorSmartyPants/RemoteImageSortingBond-009
Round RemoteImage CommunityRating to nearest tenths when sorting
2025-05-04Cleanup file related code (#14023)Bond-009
2025-04-24style: fix return statement indentation in StreamInfo.cssususu98
2025-04-24Style: Fix indentation in StreamInfo.cssususu98
2025-04-23refactor(StreamInfo): reorganize subtitle URL logic and conditionssususu98
# Conflicts: # MediaBrowser.Model/Dlna/StreamInfo.cs
2025-04-20Add Api and startup check for sufficient storage capacity (#13888)JPVenson