aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-04-03Only remove keyframe cache dir if it exists (#13834)Tim Eisele
2025-04-02Trim library names (#13828)JPVenson
2025-04-02Import Keyframes into database (#13771)Tim Eisele
* Migrate keyframe data into database * Clear database table before import to handle failed migrations
2025-04-02Improve dynamic HDR metadata handling (#13277)gnattu
* Add support for bitstream filter to remove dynamic hdr metadata * Add support for ffprobe's only_first_vframe for HDR10+ detection * Add BitStreamFilterOptionType for metadata removal check * Map HDR10+ metadata to VideoRangeType.cs Current implementation uses a hack that abuses the EL flag to avoid database schema changes. Should add proper field once EFCore migration is merged. * Add more Dolby Vision Range types Out of spec ones are problematic and should be marked as a dedicated invalid type and handled by the server to not crash the player. Profile 7 videos should not be treated as normal HDR10 videos at all and should remove the metadata before serving. * Remove dynamic hdr metadata when necessary * Allow direct playback of HDR10+ videos on HDR10 clients * Only use dovi codec tag when dovi metadata is not removed * Handle DV Profile 7 Videos better * Fix HDR10+ with new bitmask * Indicate the presence of HDR10+ in HLS SUPPLEMENTAL-CODECS * Fix Dovi 8.4 not labeled as HLG in HLS * Fallback to dovi_rpu bsf for av1 when possible * Fix dovi_rpu cli for av1 * Use correct EFCore db column for HDR10+ * Undo outdated migration * Add proper hdr10+ migration * Remove outdated migration * Rebase to new db code * Add migrations for Hdr10PlusPresentFlag * Directly use bsf enum * Add xmldocs for SupportsBitStreamFilterWithOption * Make `VideoRangeType.Unknown` explicitly default on api models. * Unset default for non-api model class * Use tuples for bsf dictionary for now
2025-04-02allow admin users to get Splashscreen even when disabled (#13825)KGT1
refactor
2025-04-01Merge pull request #13822 from thornbill/missing-system-infoNiels van Velzen
Add missing public properties to SystemInfo response
2025-03-31Cleanup ItemFields (#13818)Tim Eisele
* Cleanup ItemFields * Update MediaBrowser.Model/Querying/ItemFields.cs
2025-03-31Preserve SplashscreenLocation when updating branding config (#13756)KGT1
* add BrandingOptionsDto and add branding endpoints * refactor new HttpGet Configuration Branding into existing API calls * Add BrandingOptions to _ignoredConfigurations for openAPI * rename BrandOptionsDto to BrandingOptionsDto
2025-03-31Add Dolby Vision tests for Tizen (#12670)Dmitry Lyzo
* Fix Tizen H264 profiles * Add Dolby Vision tests for Tizen * Allow Dolby Vision fallback layer on Tizen 3+
2025-03-31Reduce SKImage to SKBitmap conversion, high quality canvas (#5366)Fernando Fernández
2025-03-31Fix Tmdb external URL generation (#13817)Tim Eisele
* Fix Tmdb external URL generation * Update MediaBrowser.Providers/Plugins/Tmdb/TmdbExternalUrlProvider.cs
2025-03-31Explicitly set default value for enums used in API models (#13821)gnattu
Enums in response model with no nullability or default value will make the API very fragile as each extension to the enum will break the API for some clients, but a lot of enums actually do have an unknown value which should be used as a default. This set all model properties that are non-nullable using an enum that has an Unknown member in 10.10, except MediaStream.VideoRangeType which is refactored in #13277
2025-03-31Use pattern matching for null checks (#13793)Bond-009
Fix the few that slipped through
2025-03-31Add missing public properties to SystemInfo responseBill Thornton
2025-03-30Rework parental ratings (#12615)Tim Eisele
2025-03-30Fix playlist order (#13730)Quyet Vu
* Fix playlist order move * Remove extra space * Added more test cases * Change namespace to file-scoped
2025-03-30Fix MoveTrickplayFiles migration (#13807)Tim Eisele
2025-03-30Update dependency z440.atl.core to 6.20.0 (#13811)renovate[bot]
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-30Fix StreamInfo.ToUrl (#13808)Tim Eisele
2025-03-30Library.db migration impovements (#13809)JPVenson
* Fixes cleanup of wrong table in migration * use dedicated context for each step * Use prepared Context * Fix measurement of UserData migration time * Update logging and combine cleanup to its own stage * fix people map not logging migrate only readonly database * Add id blacklisting in migration to avoid duplicated log entires
2025-03-30Merge pull request #13194 from gnattu/av1-videotoolboxBond-009
Enable VideoToolbox AV1 decode
2025-03-29Fixes cleanup of wrong table in migration (#13796)JPVenson
2025-03-29rebaseLJQ
2025-03-28Gate the macOS only functionsgnattu
2025-03-28Use string literalgnattu
2025-03-28feat: allow grouping shows into collections (#13236)Johannes Heuel
* feat: allow grouping shows into collections * add pre-startup routine to rename EnableGroupingIntoCollections * Update Jellyfin.Server/Migrations/PreStartupRoutines/RenameEnableGroupingIntoCollections.cs
2025-03-28Reduce allocations, simplifed code, faster implementation, included tests - ↵Tim Eisele
StreamInfo.ToUrl (#9369) * Rework PR 6168 * Fix test
2025-03-28Add profile condition to limit the number of streams (#13583)Dmitry Lyzo
2025-03-28Add validation for level inputShadowghost
2025-03-28Rename ValidationRegex to ContainerValidationRegexShadowghost
2025-03-28Fix container parameter validationShadowghost
2025-03-28Fix trusting all sources for forward headers if none are configuredJPVenson
2025-03-28Merge pull request #13790 from crobibero/fix-buildNiels van Velzen
Fix build and tests
2025-03-27Revert changes to DirectoryServiceCody Robibero
2025-03-27Fix merged namespace errorCody Robibero
2025-03-27Fix for Issue #12142: Fix ExtraRuleResolver filtering out top level folders ↵Michael McElroy
(#12170) * Fix ExtraRuleResolver to stop filtering out libraries where the name of the base folder matches an 'videos extras' rule with an ExtraRuleType of DirectoryName Currently the ExtraRuleResolver code doesn't know anything about the root folder of the current library. As a result, when we're attempting to add items in a library where the root folder has a name with a match in Emby.Naming.Common.NamingOptions.VideoExtraRules, the entire library is being ignored as a Video Extras folder. Need to pass in the root folder of the current library to compare to the path of the current item being evaluated, and if we match the current item's folder to the root folder, then we ignore the ExtraRules with a type of DirectoryName and we continue to scan deeper in the library. Filters still apply to subfolders within the library itself. * Update CONTRIBUTORS.md * Update Emby.Naming/Video/ExtraRuleResolver.cs * Update ExtraTests.cs Add tests for this fix. Also add missing tests in TestKodiExtras, TestExpandedExtras, and TestSample, and expanded TestDirectories into TestDirectoriesAudioExtras and TestDirectoriesVideoExtras. There were no checks for the theme-music folder name previously. * Update ExtraTests.cs Removed unnecessary "using System" * In MediaBrowser.Model, upgrade System.Text.Json from 8.0.3 (vulnerable - high risk) to 8.0.4 * Update ExtraTests.cs Remove empty lines in usings * Revert "In MediaBrowser.Model, upgrade System.Text.Json from 8.0.3 (vulnerable - high risk) to 8.0.4"
2025-03-27Implement limiting caches (#13605)Cody Robibero
* Implement basic expiring cache for LibraryManager * Add expiring cache to more places * Rider why * Make DirectoryService caches static * Use FastConcurrentLru * Reduce default cache size * Simplify DirectoryService caches * Make directory service cache size at least 128
2025-03-27Improve SkiaEncoder's font handling (#13231)gnattu
* Improve SkiaEncoder's font handling Our previous approach didn’t work with some complex library names, even when the required fonts were present, because the font handling logic was too simplistic. Modern Unicode and the fonts have become quite complex, making it challenging to implement it correctly. This improved implementation still isn’t the most correct way, but it’s better than it used to be. It now falls back to multiple fonts to find the best one and also handles extended grapheme clusters that were incorrectly processed before. * Fix space * Remove redundant comment * Make _typefaces an array * Make Measure and Draw text function name clear * Fix rename
2025-03-27Add channel queries to series (#13356)Kevin Jilissen
Currently, the IChannel interface can deliver channel result folders which are interpreted as series and seasons. However, Jellyfin does not query for the contents of these folders when viewing said serie of season. This results in empty series in the API.
2025-03-27Fix Sort by Year Bug (#12101) (#13733)Jacob Warren
2025-03-27Fix validation of VAAPI/QSV render node path (#13786)Nyanmisaka
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2025-03-27Fix consumer count off by one when closing a browser tab with a livestream ↵timminator
that is transcoding (#13220) Rework Implementation Fix review issues Add missing nullorempty check Fix closely related #13721
2025-03-27Avoid multiple enumerationsTobias Kloy
2025-03-27Fix IsInMixedFolder not being set for Extras in mixed subfoldersTobias Kloy
2025-03-27Include UnratedType in LibraryDb migration query (#13783)theguymadmax
2025-03-27Add eac3 as audio name format (#13784)theguymadmax
2025-03-27Add override for migration if old library still exists (#13779)JPVenson
2025-03-26Fix only returning one item from /Item/Latest api. (#12492)JQ
* Updated to EFcore * Remove unused using * Dont use DateCreated not from episode type or music type * use TranslateQuery to filter out instead and then do the grouping and retrival of min and max datecreated instead * Album also
2025-03-26Change the order of the iso6392.txt file (#13314)baka0815
* Change the order of the ISO-639-2 list Now the ISO 639-2/T (terminological) comes first (which is the same as the ISO 639-3 code) and the second column is for the ISO 639-2/B (bibliograpihc) code. The terminological code is derived from the native name for the language while the bibliographic code is more of a "legacy feature" where the code is derived from the English name for the language. The format of the file is now ISO 639-2/T (or ISO 639-3) | ISO 639-2/B (where applicable) | ISO 639-1 (two-letter code) | English name | French name * Sort the ISO list by the first column
2025-03-26Extract container, video and audio compatibility checks (#12678)Dmitry Lyzo
* Extract container, video and audio compatibility checks * Extract audio compatibility checks * Extract CheckVideoConditions * Simplify direct audio stream check