Commit graph

4569 commits

Author SHA1 Message Date
Tim Eisele
6e9e2f500f
Fix Genre cleanup (#13916) 2025-04-14 20:43:38 -06:00
Nyanmisaka
8be8ea60f1
Add DoVi Profile 5 support for Rockchip RKMPP (#13911) 2025-04-13 07:43:58 -06:00
Tim Eisele
cad8de9701
Add Genre cleanup and fix cleanup filter queries (#13891) 2025-04-09 18:40:16 -06:00
Nyanmisaka
98697e75ca
Fix seeking beyond EOF again (#13871) 2025-04-08 14:58:55 -06:00
Joshua M. Boniface
7d705249ca
Merge commit from fork
Fix validation of API parameters passed to FFmpeg
2025-04-05 14:44:19 -04:00
Tim Eisele
d0c1ef8002
Update MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2025-04-03 20:42:33 +02:00
timminator
d1ed6593ad
Make ReadInputAtNativeFramerate configurable for M3U tuner (#13773) 2025-04-03 09:18:00 -06:00
Tim Eisele
596b635511
Cleanup extracted files (#13760)
* Cleanup extracted files

* Pagination and fixes

* Add migration for attachments to MigrateLibraryDb

* Unify attachment handling

* Don't extract again if files were already extracted

* Fix MKS attachment extraction

* Always run full extraction on mks

* Don't try to extract mjpeg streams as attachments

* Fallback to check if attachments were extracted to cache folder

* Fixup
2025-04-03 09:17:14 -06:00
Tim Eisele
0573999d5e
Import Keyframes into database (#13771)
* Migrate keyframe data into database

* Clear database table before import to handle failed migrations
2025-04-02 18:06:40 -06:00
gnattu
49ac705867
Improve dynamic HDR metadata handling (#13277)
* 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-02 18:06:02 -06:00
Tim Eisele
086fbd49cf
Cleanup ItemFields (#13818)
* Cleanup ItemFields

* Update MediaBrowser.Model/Querying/ItemFields.cs
2025-03-31 17:46:21 -06:00
Bond-009
e9729a536f
Use pattern matching for null checks (#13793)
Fix the few that slipped through
2025-03-31 17:38:25 -06:00
Tim Eisele
3fc3b04daf
Rework parental ratings (#12615) 2025-03-30 21:51:54 -06:00
Bond-009
476a0d6932
Merge pull request #13194 from gnattu/av1-videotoolbox
Enable VideoToolbox AV1 decode
2025-03-30 23:12:53 +02:00
Johannes Heuel
2c499d1e86
feat: allow grouping shows into collections (#13236)
* feat: allow grouping shows into collections

* add pre-startup routine to rename EnableGroupingIntoCollections

* Update Jellyfin.Server/Migrations/PreStartupRoutines/RenameEnableGroupingIntoCollections.cs
2025-03-28 06:54:12 -06:00
Shadowghost
3df7d7a809 Add validation for level input 2025-03-28 08:21:37 +01:00
Shadowghost
1fcc79316d Rename ValidationRegex to ContainerValidationRegex 2025-03-28 08:21:37 +01:00
Cody Robibero
15465afd8e Revert changes to DirectoryService 2025-03-27 21:13:27 -06:00
Cody Robibero
88ceaa39b0
Implement limiting caches (#13605)
* 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-27 18:16:54 -06:00
Kevin Jilissen
9f70578997
Add channel queries to series (#13356)
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-27 18:06:10 -06:00
Nyanmisaka
a123a2cb22
Fix validation of VAAPI/QSV render node path (#13786)
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2025-03-27 17:59:32 -06:00
timminator
181a37a8cd
Fix consumer count off by one when closing a browser tab with a livestream that is transcoding (#13220)
Rework Implementation
Fix review issues
Add missing nullorempty check
Fix closely related #13721
2025-03-27 17:59:08 -06:00
JQ
d06ce1f1e0
Fix only returning one item from /Item/Latest api. (#12492)
* 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-26 20:26:47 -06:00
JPVenson
42bdb22bfb Fixed namespaces 2025-03-25 16:45:00 +01:00
JPVenson
160020c551 WIP fixed namespaces 2025-03-25 15:30:22 +00:00
JPVenson
850f1c79f1 Merge branch 'master' into feature/DatabaseRefactor 2025-03-25 15:12:48 +00:00
Tim Eisele
dfb485d1f2
Rework season folder parsing (#11748) 2025-03-23 10:05:40 -06:00
Tim Eisele
8db6a39e92
Remove all DB data on item removal, delete internal trickplay files (#13753) 2025-03-23 10:05:13 -06:00
Cody Robibero
85b5bebda4
Add fast-path to getting just the SeriesPresentationUniqueKey for NextUp (#13687)
* Add more optimized query to calculate series that should be processed for next up

* Filter series based on last watched date
2025-03-18 17:37:04 -06:00
Joshua M. Boniface
79437f85c5
Merge pull request #13175 from Shadowghost/external-url-providers
Migrate to IExternalUrlProvider
2025-03-13 21:08:18 -04:00
Marc Brooks
a5f3d942f6
Merge branch 'master' into sort-nfo-data 2025-03-12 10:33:27 -05:00
JPVenson
feea5af2f3 Merge remote-tracking branch 'jellyfinorigin/master' into feature/DatabaseRefactor 2025-03-01 14:16:49 +00:00
Marc Brooks
114591c1aa Clean up usings and honor SortName 2025-02-25 01:51:38 -06:00
Shadowghost
5ff2767012 Use TryGetProviderId where possible 2025-02-21 11:58:46 +01:00
theguymadmax
7ca09c4081 Backport pull request #13594 from jellyfin/release-10.10.z
Fix 4K filtering when grouping movies into collections

Original-merge: 317d7a9f4f

Merged-by: crobibero <cody@robibe.ro>

Backported-by: Bond_009 <bond.009@outlook.com>
2025-02-21 05:39:38 -05:00
Shadowghost
5303445c9b Migrate to IExternalUrlProvider 2025-02-20 10:13:27 +01:00
JPVenson
d8030147ff Merge remote-tracking branch 'jellyfinorigin/master' into feature/DatabaseRefactor 2025-02-19 18:25:00 +00:00
Bond_009
ce76817020 Rename CreateOrUpdateItems back to CreateItems
Reverts the name change of this function made in the EFCore PR. This hopefully
reduces the amount of merge conflicts while backporting and makes it consistent
with the CreateItem function.
2025-02-09 18:30:53 +01:00
elfalem
ba46608ffe Backport pull request #12721 from jellyfin/release-10.10.z
Skip allowed tags check for parents of an item

Original-merge: d1fbdcee34

Merged-by: crobibero <cody@robibe.ro>

Backported-by: Bond_009 <bond.009@outlook.com>
2025-02-09 12:19:51 -05:00
Marc Brooks
4e64b261a8 Moved Trimmed to Jellyfin.Extensions.StringExtensions 2025-02-05 18:13:28 -06:00
JPVenson
dfdef511a5 Merge remote-tracking branch 'jellyfinorigin/master' into feature/pgsql_provider 2025-02-05 18:32:13 +00:00
Bond-009
00b66a06ea
Enable nullable for AuthorizationInfo (#13485) 2025-02-04 17:10:39 -07:00
Marc Brooks
e8cbcde02e
Merge branch 'master' into sort-nfo-data 2025-02-03 19:48:59 -06:00
gnattu
d52ab30ae9 Backport pull request #13313 from jellyfin/release-10.10.z
Use nv15 as intermediate format for 2-pass rkrga scaling

Original-merge: 5c6317f68d

Merged-by: crobibero <cody@robibe.ro>

Backported-by: Bond_009 <bond.009@outlook.com>
2025-02-03 16:59:05 -05:00
Shadowghost
e79fc6b851 Backport pull request #13288 from jellyfin/release-10.10.z
Fix DTS in HLS

Original-merge: cea0c95942

Merged-by: crobibero <cody@robibe.ro>

Backported-by: Bond_009 <bond.009@outlook.com>
2025-02-03 16:59:04 -05:00
gnattu
4595625f19 Backport pull request #13262 from jellyfin/release-10.10.z
Don't use custom params on ultrafast x265 preset

Original-merge: 86160cd99c

Merged-by: Bond-009 <bond.009@outlook.com>

Backported-by: Bond_009 <bond.009@outlook.com>
2025-02-03 16:59:03 -05:00
nyanmisaka
bc1419728f Backport pull request #13151 from jellyfin/release-10.10.z
Always do tone-mapping for HDR transcoding when software pipeline is used

Original-merge: b31f1696f2

Merged-by: Bond-009 <bond.009@outlook.com>

Backported-by: Bond_009 <bond.009@outlook.com>
2025-02-03 16:55:53 -05:00
JPVenson
17003f4d76 Merge remote-tracking branch 'jellyfinorigin/master' into feature/pgsql_provider 2025-02-02 02:09:14 +00:00
luzpaz
6fda268892
Merge pull request #13453 from luzpaz/extentions-typo
Fix source typo
2025-01-29 16:56:25 +01:00
Bond-009
9734892322
Merge pull request #12925 from Bond-009/await
Always await instead of directly returning Task
2025-01-28 11:29:46 +01:00