Versie 10.11.0 van Jellyfin is uitgekomen. Deze mediaserver is een fork van Emby en is ontstaan nadat Emby closedsource werd en er voor zogenaamde premiumfeatures betaald moest gaan worden, zoals dat ook bij Plex het geval is. Jellyfin is echter volledig opensource gebleven en alle functionaliteit is aanwezig. Het draait op Windows, macOS, Linux of in een Docker-container. Verder zijn er clients voor elk OS, mediaspelers, tv's en mobiele apparaten. Versie 10.11.0 bevat de volgende verzameling aan bugfixes en kleine verbeteringen:
Jellyfin Server 10.11.0This major release brings many new features, improvements, and bugfixes to improve your Jellyfin experience.
HighlightsEnhancements
- Add Full system backup feature [PR #13945]
- Add .gitignore style ignoring [PR #13906]
- Add Api and startup check for sufficient storage capacity [PR #13888]
- Added Setup overlay app to communicate status of startup [PR #12880]
- Remove the ability to auto port forward [PR #13222]
- Refactor library.db into jellyfin.db and EFCore [PR #12798]
General Changes
- add xmbc nfo uniqueid type norminalisation [PR #14965]
- Fix CA1051 warning, Change public field to auto-property [PR #14827]
- Offload 1080p+ subtitle scaling to RKRGA [PR #14179]
- Enable OpenCL deinterlacer for AMF on Windows when available [PR #14144]
- Use VBR and MBBRC in QSV encoders for better quality [PR #14079]
- Fix the transparency issue of ASS subtitle rendering in HWA [PR #14024]
- Add DoVi Profile 5 support for Rockchip RKMPP [PR #13911]
- Add ServerName to startup configuration [PR #13901]
- Add missing public properties to SystemInfo response [PR #13822]
- Reduce allocations, simplifed code, faster implementation, included tests - StreamInfo.ToUrl [PR #9369]
- Fix only returning one item from /Item/Latest api. [PR #12492]
- Validate encoder path when saving [PR #14996]
- Handle es-419 in TMDb [PR #14946]
- Use TryAdd instead of Add when registering custom OpenAPI responses [PR #14997]
- Fix contributing artist query [PR #14991]
- Fix exception when saving user data to NFO files [PR #14993]
- Remove chapters on file change [PR #14984]
- Fix LUFS detection deadlock per issue #13697 [PR #14960]
- Prevent PlaylistsFolder deletion during library removal [PR #14978]
- Skip creating Person entities for Artist and AlbumArtist types [PR #14971]
- Fix artist external Url [PR #14969]
- apply sort on ItemValue query [PR #14976]
- Fix collections folder duplication [PR #14925]
- Improve performance on people query [PR #14963]
- Clean up missing image references [PR #14962]
- Truncate password reset file on open for writing [PR #14948]
- Handle xx as TMDb no language for backdrops [PR #14941]
- Fix libraries not loading after startup wizard, Change AddVirtualFolder to validate folders [PR #14942]
- Limit decoder thread count on AMD AMF to save VRAM [PR #14943]
- fix: get total count after grouping [PR #14931]
- Fix mka-style tagging key [PR #14936]
- Readd wildcard search [PR #14934]
- Fix BoxSet sorting [PR #14919]
- Add check for processing recursive data structures [PR #14897]
- Fix parental ratings [PR #14909]
- Add tag filtering and random sorting to GetSimilarItems [PR #14918]
- Add explicit reference check to migration [PR #14887]
- Fix AddProperParentChildRelationBaseItemWithCascade migration deleting all items [PR #14890]
- Only include custom code analysis for debug builds [PR #14883]
- Fixing the UFID field value giving a warning and not being correctly processed [PR #14851]
- Restore NFO/import ordering by using ListOrder instead of SortOrder [PR #14873]
- Expose ExtractAllExtractableSubtitles [PR #14876]
- Add Jellyfin.CodeAnalysis project to abi diff [PR #14875]
- Fix people deduplication lookup [PR #14864]
- Fixes FK on unconnected base items [PR #14863]
- Rollback to last working skiasharp version [PR #14862]
- Add Check for ItemValues [PR #14860]
- Apply filter server side [PR #14856]
- Fix people SortOrder [PR #14852]
- Include ListOrder on Import [PR #14854]
- Add People Dedup and multiple progress fixes [PR #14848]
- Fix collections one-off [PR #14814]
- Fix ordering where exists [PR #14843]
- Add schema to 503 headers [PR #14840]
- Fix Image loading [PR #14842]
- Fix groupings not applied [PR #14826]
- fix: add back missing behavior for HasAnyProviderId [PR #14831]
- Attach before updating/deleting to avoid DbUpdateConcurrencyException [PR #14746]
- Skip removed images when updating images [PR #14823]
- Revert limit hack [PR #14820]
- Make migration handle parent cleanup [PR #14817]
- Fix root folder not being saved to Db if nessesary [PR #14819]
- Fix playlist move from smaller to larger index [PR #14794]
- #14751 Only migrate providerids that match assumption [PR #14810]
- Temp/options and isplayed [PR #14795]
- Fix sync disposal of async-created IAsyncDisposable objects [PR #14755]
- Add ec3 to audio file extensions [PR #14799]
- Reenable common PRAGMA setters [PR #14791]
- Fix IsPlayed [PR #14786]
- Allow non-admin users to subscribe to their own Sessions [PR #13767]
- Fix duplicate media entries when sorting [PR #14404]
- Avoid constant arrays as arguments [PR #14784]
- Various cleanups [PR #14785]
- Fix several Stackoverflows [PR #14783]
- Add fast path to check for empty ignore files [PR #14782]
- Never replace BoxSet LinkedChildren on update [PR #14723]
- Change Spanish variants order in iso6392.txt to make Castillian the "default" version [PR #14777]
- Improve optimistic locking behavior [PR #14779]
- Reenable pooling [PR #14778]
- Add 1-second tolerance to resume playback completion check [PR #14774]
- Sort trailers before teasers [PR #14715]
- Seal Emby.Naming.Video.StackResolver.StackMetadata to silence a compiler warning [PR #14764]
- Don't use ffprobe frame options on audio probe [PR #14773]
- Additional debug logging for SQLite connections [PR #14753]
- Skip non-media folders in movie resolver [PR #14724]
- Preserve 3D format on metadata refresh [PR #14742]
- Refactor Display preference manager [PR #14056]
- Fix latest items grouping by collection type [PR #14736]
- Add more robust error handling for AudioNormalizationTask [PR #14728]
- AudioNormalizationTask db progress saving [PR #14550]
- Update .Net Core to .Net [PR #14718]
- Correct Album Artists merge logic [PR #14655]
- fix ProbeProvider.HasChanged: if file date OR file size changed [PR #14674]
- Normalizer cleanup [PR #14711]
- Use existing userData when filtering by IsPlayed [PR #14703]
- Fix GetSimilarItems to exclude the searched for item Id [PR #14686]
- Run background ffmpeg tasks as ProcessPriorityClass.BelowNormal [PR #14651]
- Delay initialization of singleton services during migration CoreInitialisation stage [PR #14653]
- Fix AlbumArtistIds filter to use correct ItemValueType [PR #14641]
- Change Spanish; Latin language code according to BCP 47 specification [PR #14639]
- Fix anamorphic video detection (#14640) [PR #14648]
- Fix GetBaseItemDto to return related item counts via SQL count [PR #14634]
- Refactor query from EXISTS to JOIN to avoid API timeouts with large libraries [PR #14557]
- Always save images [PR #14600]
- Revert "Merge pull request #13604 from Jxiced/master" [PR #14593]
- Enhanced HTTP Range request support for. strm file [PR #14021]
- Extract subtitles of MKS aux files if they're extractable. [PR #12718]
- Further refinement of BCP 47 language labeling support [PR #14410]
- Improve extra rule resolution and file handling [PR #14540]
- Prevent whitespaces in username during wizard setup [PR #13604]
- Don't fail image saving on missing BaseItem [PR #14567]
- Add extra movflags to fMP4 to take initial audio delay into account [PR #14553]
- Add fallback for keyframe-only trickplay extraction [PR #14467]
- Preserve interpunct (·) [PR #14543]
- Also migrate IsFolder [PR #14554]
- fix file modification date comparisons [PR #14503]
- Add progress reporting to AudioNormalizationTask. [PR #14306]
- Fix allow and block queries [PR #14482]
- Ignore directory if empty .ignore file is present [PR #14536]
- Update DateLastSaved after running metadata savers [PR #14531]
- Fix trickplay extraction ffmpeg error-handling [PR #14493]
- Fix issue with EncodedRecorder streams not showing up under "Active Recordings" [PR #14357]
- Supress transaction [PR #14514]
- Fix Serbian ISO 639-2 codes [PR #14476]
- Clean up and fix backup/restore [PR #14489]
- Use RequestHelpers.GetSession in SessionWebSocketListener [PR #14494]
- improve userdata migration [PR #14488]
- Delete old migrations on restore [PR #14486]
- Drawing: make SkiaEncoder more robust when reading image dimensions [PR #14481]
- Ensure UserData stays unique on delete [PR #14475]
- Fix refreshing the library cannot delete old attachments [PR #14461]
- Allow loading of Database options for DB provider [PR #14466]
- vob file support [PR #14471]
- Add SerilogExpressions reference [PR #14438]
- Added advanced parallel process calculation [PR #14437]
- Use IDatabaseCreator instead of relying on History repository [PR #14465]
- Only save images when changed [PR #14425]
- Only enable VAAPI MJPEG encoder on Intel iHD driver [PR #14433]
- Fix PeopleHelper.AddPerson Exceptions due to bad meta-data extracts. [PR #14309]
- Fix seasons random (#13224) [PR #14335]
- Prefer ALBUMARTISTS to ALBUMARTIST when PreferNonstandardArtistsTag set [PR #14413]
- Revert invalid Portuguese translations [PR #14414]
- Fix compiler warning for CodeMigration.cs [PR #14390]
- Fix modification checks and make sure to use UTC [PR #14347]
- Fix typo in 503 response for API [PR #14377]
- Fix -fps_mode option being applied on input [PR #14379]
- Improve cast and crew handling [PR #14370]
- Add migration to migrate disconnected UserData too [PR #14339]
- Fix issue with syncplay group incorrectly playing content on creation [PR #14360]
- Adapt LrcLyricParser to new LrcParser version [PR #14263]
- Fix missing music genre metadata [PR #14332]
- Make keyframe extraction task cancellable [PR #14368]
- Cleanup Migration [PR #14341]
- Skip missing images when creating collages [PR #14344]
- fix(devcontainer): correct apt-packages path [PR #14235]
- Don't check dynamic metadata removal for static HDR formats [PR #14322]
- Fix QSV "static surface pool size exceeded" on Windows [PR #14330]
- Add act as a stacking option for music albums [PR #14333]
- Use dto instead of db object when returning trickplay [PR #14328]
- Use square root scaling for high framerate videos' bitrate requirements [PR #14314]
- Fix startup logger, startup health check [PR #14327]
- Use proper scheduler that honors the parallel task limit [PR #14281]
- Always set update action when item does not exist [PR #14304]
- Only remove image file if it exists [PR #14302]
- Add explicit check for placeholder ID [PR #14298]
- Remove appsettings.json loading component from startup server [PR #14275]
- Fix People Issues [PR #14284]
- Properly handle file access issues in some cases [PR #14272]
- Fix UserData cleanup task and queries [PR #14280]
- Fix schema name on backup [PR #14269]
- Fix existing media segments not being handled on scan [PR #14218]
- chore/typo [PR #14264]
- fix(collection): Do not lock newly created collections [PR #14259]
- fix(Session): don't query DB if queue hasn't changed [PR #14244]
- Feature/persistent watch data [PR #14262]
- Pin Skiasharp version to 3.116.1 [PR #14255]
- Fix ExcludeItemId, ExcludeProviderIds and HasAnyProviderId filter [PR #14249]
- Ignore null key virtual folders [PR #14253]
- util forward headers on startup api [PR #14246]
- Rework startup topic handling and reenable output to logging framework [PR #14243]
- Use filename for single videos (non-movie/null collections) in MovieResolver [PR #14162]
- Don't attempt to do metadata removal for dovi without fallback [PR #14240]
- Only show log in Local network [PR #14241]
- Fix search for missing metadata overriding existing metadata [PR #12908]
- Add year parameter to TMDB series cache key [PR #14209]
- always sort season by index number [PR #13307]
- Fix source directory for setup template [PR #14228]
- Fix race condition in SessionManager.GetSessionInfo [PR #14131]
- Fix broken chapter image placeholders when no image is present [PR #14230]
- Update issue report.yml [PR #14099]
- Fix metadata not refreshing in negative UTC timezones [PR #14225]
- Fix DirectoryNotFoundException for backdrop folders in trickplay [PR #14223]
- Add support for delete from playlist call with api key [PR #14154]
- Add cache-control: no-cache to index.html if selfhosted [PR #14222]
- Feature/version check in library migration [PR #14105]
- Migrate all known old migrations even when not applied in migration.xml [PR #14217]
- Allow custom plugin provided database providers to be loaded [PR #14171]
- Add declarative backups for migrations [PR #14135]
- Update XmlTv tests to use UTC date formats [PR #14163]
- Fix missing logging of connections by disallowed IPs [PR #14011]
- Prune trickplay data on regenerate and scan [PR #14085]
- Add ExcludeItemIds filtering to UserViewBuilder.Filter [PR #14203]
- Fix server not auto restarting [PR #14215]
- Backup MigrationHistory as well [PR #14136]
- Add multiple options for internal locking [PR #14047]
- Fix unittests [PR #14202]
- Localization/iso6392.txt: Correct the Portuguese entries [PR #14030]
- Add partition helper [PR #14039]
- Round RemoteImage CommunityRating to nearest tenths when sorting [PR #13145]
- Add SVG to transparent image types [PR #14160]
- Make name sorting case-insensitive [PR #14153]
- Ensure subfolders are processed in folders containing one video file [PR #14140]
- Fix collection behavior when sorting by rating or runtime [PR #14148]
- Fix ArgumentNullException when downloading season logos [PR #14141]
- Terminate at null char for audio tags [PR #14100]
- Fix ArgumentNullException in TmdbExternalUrlProvider [PR #14130]
- Translate query by AncestorIds correctly [PR #14094]
- Fix extracted data cleanup in cleanup post scan task [PR #14083]
- added different countries parental ratings [PR #14069]
- Fix Blu-ray metadata: preserve external streams and language metadata [PR #14077]
- Reject invalid replaygain tag value [PR #14082]
- Cleanup external item data cleanup [PR #14072]
- Only consider migrations that have key set for migration.xml migration [PR #14061]
- Add tests for ManagedFileSystem.MoveDirectory [PR #14065]
- Fix cross filesystem dir moving [PR #14063]
- fix #14034 Readd Context provider on Initialise [PR #14040]
- Cleanup file related code [PR #14023]
- Recognize file changes and remove data on change [PR #13839]
- Add albumart as recognized filename for music artwork [PR #14048]
- Added parental ratings for Indian content [PR #14050]
- Cleanup Tasks and Validators [PR #14028]
- Add "part" as possible album prefix for stacking [PR #14022]
- Fix trickplay directory path construction [PR #14036]
- Fix startup logger log file order [PR #14044]
- Add new nuget packages to abi diff [PR #14016]
- Fix image extractor with more strict ffmpeg requirement [PR #14013]
- Unified migration handling [PR #13950]
- Fix distinction queries [PR #14007]
- Fix ItemValue query [PR #13939]
- Don't pass through timestamp for image extractor [PR #13999]
- Optimize migrations [PR #13855]
- improved performance of save operations [PR #13889]
- Create directory before checking for size [PR #13962]
- Check for path overlaps [PR #12832]
- Rework chapter management [PR #13847]
- Fix IsInMixedFolder not being set for Extras [PR #13536]
- Only run merge conflict labler action on pull requests [PR #13378]
- Deprecate OnPlaybackXXX API operations in favor of ReportPlaybackXXX [PR #13993]
- Remove 10.11.z EFcore migration warnings [PR #13972]
- Fix OverflowException when scanning media with a very short duration [PR #13949]
- Return SyncPlay group info after creation, add GET group endpoint [PR #13935]
- Add port awareness to startup server [PR #13913]
- Fix SyncPlay WebSocket OpenAPI schemas [PR #13946]
- Improve video resolution filtering and classification logic [PR #13332]
- Fix thumbnail extraction of mpegts videos in FFmpeg 7.1+ [PR #13942]
- Fix Genre cleanup [PR #13916]
- Safeguard against null value trimming in tag results [PR #13908]
- Remove the hashed password from startup users response [PR #13904]
- Add polish age ratings [PR #13851]
- Add Genre cleanup and fix cleanup filter queries [PR #13891]
- Only reselect audio streams when user preference is respected [PR #13832]
- Fix negated IP addresses without subnet mask not being parsed correctly [PR #13854]
- Fix InheritedParentalRatingSubValue not set [PR #13880]
- Use Guid for parentPrimaryImageItemId [PR #13874]
- Fix seeking beyond EOF again [PR #13871]
- Translate the ISO-639-2/B codes to ISO-639-2/T. [PR #13068]
- Fix the migration as the new constraint now uses Value as unique key [PR #13867]
- Add API support for ELRC word-based lyrics [PR #12941]
- Fix backup not written to correct directory [PR #13853]
- Fix Genre type [PR #13862]
- Send Album Artist and Artist in seperate variables when doing a lyrics search [PR #13852]
- Fix ancestors [PR #13827]
- Fix indices and update of ItemValues [PR #13843]
- Use subdirectories to organize extracted data [PR #13838]
- Make ReadInputAtNativeFramerate configurable for M3U tuner [PR #13773]
- Fix ArgumentNullException on playlist creation [PR #13837]
- Cleanup extracted files [PR #13760]
- Only remove keyframe cache dir if it exists [PR #13834]
- Trim library names [PR #13828]
- Import Keyframes into database [PR #13771]
- Improve dynamic HDR metadata handling [PR #13277]
- allow admin users to get Splashscreen even when it's disabled [PR #13825]
- Cleanup ItemFields [PR #13818]
- Preserve SplashscreenLocation when updating branding config [PR #13756]
- Add Dolby Vision tests for Tizen [PR #12670]
- Reduce Skia conversions [PR #5366]
- Fix Tmdb external URL generation [PR #13817]
- Explicitly set default value for enums used in API models [PR #13821]
- Use pattern matching for null checks [PR #13793]
- Rework parental ratings [PR #12615]
- Fix playlist order [PR #13730]
- Fix MoveTrickplayFiles migration [PR #13807]
- Fix StreamInfo.ToUrl [PR #13808]
- Library.db migration impovements [PR #13809]
- Enable VideoToolbox AV1 decode [PR #13194]
- Fix cleanup of wrong table in migration [PR #13796]
- feat: allow grouping shows into collections [PR #13236]
- Fix build and tests [PR #13790]
- Add profile condition to limit the number of streams [PR #13583]
- Fix for Issue #12142: Fix ExtraRuleResolver filtering out top level folders [PR #12170]
- Implement limiting caches [PR #13605]
- Improve SkiaEncoder's font handling [PR #13231]
- Add channel queries to series [PR #13356]
- Fix Sort by Year Bug (#12101) [PR #13733]
- Fix consumer count off by one when closing a browser tab with a livestream that is transcoding [PR #13220]
- Fix validation of VAAPI/QSV render node path [PR #13786]
- Include UnratedType in LibraryDb migration query [PR #13783]
- Add eac3 as an audio name format [PR #13784]
- Add override for migration if library.old aready exists [PR #13779]
- Extract container, video and audio compatibility checks [PR #12678]
- Feature/backup on migration [PR #13754]
- Change the order of the iso6392.txt file [PR #13314]
- Fix Cleanup task not awaiting async methods [PR #13769]
- [Feature] Database code refactor [PR #13589]
- Add OpenAPI spec for #12880 [PR #13764]
- Add ability to provide search pattern to GetFiles [PR #13691]
- Include PeopleBaseItemMap in GetPeople to inlcude Role and SortOrder [PR #13616]
- Disable flaky tests [PR #13765]
- Add missing singleton [PR #13761]
- Fix Invalid Item Queries [PR #13757]
- Rework season folder parsing [PR #11748]
- Remove all DB data on item removal, delete internal trickplay files [PR #13753]
- Rename Islamic Republic of Pakistan to Pakistan [PR #13752]
- 2x faster library.db migration, reduced memory pressure [PR #13749]
- Fix IMDb URL for People [PR #13724]
- Fix OnPlaybackStopped task erroring out when closing a browser tab with a livestream that is transcoding [PR #13226]
- Fix subtitle selection to respect preferred language for forced subtitles [PR #13098]
- Add fast-path to getting just the SeriesPresentationUniqueKey for NextUp [PR #13687]
- Add start index to /Programs/Recommended endpoint [PR #13696]
- Fix subnet contains check [PR #13493]
- Fix build and tests [PR #13718]
- Migrate to IExternalUrlProvider [PR #13175]
- Include CleanName in LibraryDb migration query [PR #13690]
- Sort embedded collections in Nfo files [PR #9560]
- Extract trickplay files into own subdirectory [PR #13406]
- Include SortName in LibraryDb migration query [PR #13675]
- Fix possible NullReferenceException in playlist warning [PR #13643]
- Don't use RETURNING clause with EFCore [PR #13492]
- Better exception message when folders or folder items are missing [PR #13632]
- Remove deprecated GetWakeOnLanInfo endpoint [PR #13606]
- Revert nullability of MediaStream.IsHearingImpaired [PR #13573]
- Add support for reading and storing Recording MBIDs from file metadata [PR #12173]
- Don't allow usernames to have leading or trailing spaces [PR #13556]
- Change BaseItemEntity ChannelId to nullable Guid [PR #13553]
- Disallow incremental updates to JellyfinDbModelSnapshot [PR #13564]
- Make the JsonConverters for delimited arrays more generic [PR #13396]
- Write only for query columns to EFCore db [PR #13542]
- Fix the issue where the external audio track always defaults. [PR #13132]
- Simulate old GetItemValueNames behavior [PR #13539]
- Rename CreateOrUpdateItems back to CreateItems [PR #13527]
- Fix Search results are case-sensitive for people [PR #13516]
- Handle empty image lists gracefully in SplashscreenPostScanTask [PR #13498]
- Remove check-backport CI action [PR #13523]
- Enable nullable for AuthorizationInfo [PR #13485]
- Order MediaStream query by StreamIndex [PR #13506]
- Make StartDate/EndDate nullable [PR #13494]
- Fix build after backports due to EFCore change [PR #13488]
- Removing CollectionFolders from cache when they are deleted on disk. [PR #13315]
- Fix source typo [PR #13453]
- Always await instead of directly returning Task [PR #12925]
- Remove useless checks and dead code [PR #13405]
- chore(ci): Let CI fail independently on each platform [PR #13446]
- Fix spelling [PR #13444]
- Fix typos [PR #13438]
- Use MediaTypeNames where possible [PR #13440]
- Fix various typos [PR #13436]
- Fix spelling [PR #11103]
- improve documentation for ContainerHelper class [PR #13360]
- Add ability to remove a ChannelMapping [PR #12970]
- Add option to disable deprecated legacy authorization options [PR #13306]
- Fix .gzip handling and URL redirection for XML TV guide parsing [PR #13319]
- Prefer ApiKey over api_key in generated URL's [PR #13342]
- Migrate rulesets to .editorconf [PR #13195]
- move to new System.Threading.Lock type for better performance [PR #13213]
- Determine tv image type by extension if content-type is unavailable [PR #13076]
- Removed RemoveOldPlugins configuration flag [PR #13102]
- Implement TaskTriggerInfoType enum [PR #12783]
- Move TV-PG ratings to be in line with PG rating. [PR #12867]
- Added test for ListsingsManager.DeleteListingsProvider(). [PR #12793]
- Updated DevContainer to Bookworm Debian [PR #13037]
- Fix typo in guide info endpoint comment [PR #13117]
- make playlist creation private by default [PR #12853]
- Fix typo in LibraryOptions [PR #13097]
- Fixed segment providers never presented to UI [PR #13060]
- Add dotnet9 to abi compat workflow [PR #13046]
- Update projects to .NET 9 [PR #13023]
- Add EpisodeExpression for anime file names [PR #12778]
- Added + in username regex validator, Test + in username, issue #10414 [PR #12819]
- Auto update issue template version on new release [PR #12893]
- Update issue template version from 10.9.11 to 10.10.0 [PR #12882]
