Cody Robibero
da3f3b09d9
Use existing userData ( #14703 )
Stale PR Check / Check PRs with merge conflicts (push) Has been cancelled
CodeQL / Analyze (csharp) (push) Has been cancelled
OpenAPI / OpenAPI - HEAD (push) Has been cancelled
OpenAPI / OpenAPI - BASE (push) Has been cancelled
Tests / run-tests (macos-latest) (push) Has been cancelled
Tests / run-tests (ubuntu-latest) (push) Has been cancelled
Tests / run-tests (windows-latest) (push) Has been cancelled
Project Automation / Project board (push) Has been cancelled
Merge Conflict Labeler / Labeling (push) Has been cancelled
OpenAPI / OpenAPI - Difference (push) Has been cancelled
OpenAPI / OpenAPI - Publish Unstable Spec (push) Has been cancelled
OpenAPI / OpenAPI - Publish Stable Spec (push) Has been cancelled
Stale Issue Labeler / Check for stale issues (push) Has been cancelled
2025-08-26 16:09:17 -06:00
Cody Robibero
beca405ad4
Refactor to pull item counts in a single query
2025-08-11 21:06:04 -06:00
Evan
5eef85f027
move new TaggedItemCounts to its own file
2025-08-11 20:49:06 +08:00
Evan
0a4ff3f3c0
Fix GetBaseItemDto to return related item counts via SQL count
...
For API call /Items/{item id} GetBaseItemDto will return the counts of related items e.g. artists, albums, songs. GetBaseItemDto currently does this by calling GetTaggedItems which retrieves the objects into memory to count them. Replace with SQL count.
Fixes:
This should be an improvement for any large libraries, but especially large music libraries. Example:
Request Library -> Genres -> any very popular genre in your large library, e.g. Classical
Number of albums = 1552, songs = 23515, ...
- Before change: Try to retrieve 1552 albums, 23515 songs, ... in memory, API never returns, database on fire
- After change: API returns in 367ms and Genre view opens with 200 albums in 2 seconds
I verified the numbers returned are correct but note that there is a bug somewhere else in Jellyfin that is setting TopParentId to NULL for a large portion of my MusicArtists, which causes them to not be counted by the existing GetCount(). This is not related to this change, also happens with the existing code, and does not seem to affect the Web UI.
Includes Cory's changes in:
- https://github.com/jellyfin/jellyfin/pull/14610#issuecomment-3172211468
- https://github.com/jellyfin/jellyfin/pull/14610#issuecomment-3172239154
2025-08-10 18:02:17 +08:00
Bond_009
c7c7b30d28
Revert "Merge pull request #13604 from Jxiced/master"
...
This reverts commit ce78af2ed4 , reversing
changes made to db7465e83d .
2025-08-06 15:49:40 +02:00
Joshua M. Boniface
4b6fb6c4bb
Merge branch 'master' into master
2025-08-03 17:27:17 -04:00
evan314159
6f49782b7b
fix file modification date comparisons ( #14503 )
2025-07-27 20:08:06 -06:00
theguymadmax
536437bbe3
Fix allow and block queries ( #14482 )
2025-07-27 19:28:04 -06:00
JPVenson
7ba77804c4
Added advanced parallel process calculation ( #14437 )
2025-07-11 23:27:13 -06:00
Nyanmisaka
db55d983f8
Only enable VAAPI MJPEG encoder on Intel iHD driver ( #14433 )
2025-07-07 18:05:14 -06:00
Bond-009
5c36b44484
Fix seasons random ( #13224 ) ( #14335 )
...
Sorting was always enabled so removed the `enableSorting` parameter
in QueryResult method.
Co-authored-by: Maxime <>
2025-07-04 19:18:38 +02:00
Tim Eisele
c6e568692e
Fix modification checks and make sure to use UTC ( #14347 )
OpenAPI / OpenAPI - HEAD (push) Waiting to run
CodeQL / Analyze (csharp) (push) Waiting to run
OpenAPI / OpenAPI - BASE (push) Waiting to run
OpenAPI / OpenAPI - Difference (push) Blocked by required conditions
OpenAPI / OpenAPI - Publish Unstable Spec (push) Blocked by required conditions
OpenAPI / OpenAPI - Publish Stable Spec (push) Blocked by required conditions
Tests / run-tests (macos-latest) (push) Waiting to run
Tests / run-tests (ubuntu-latest) (push) Waiting to run
Tests / run-tests (windows-latest) (push) Waiting to run
Project Automation / Project board (push) Waiting to run
Merge Conflict Labeler / Labeling (push) Waiting to run
2025-06-26 17:50:37 -06:00
Nyanmisaka
ebdc756547
Fix -fps_mode option being applied on input ( #14379 )
2025-06-26 17:48:43 -06:00
Bond-009
a537c66da1
Merge pull request #14322 from gnattu/disable-hdr-non-hdr-clients
...
Don't check dynamic metadata removal for static HDR formats
2025-06-19 11:27:23 +02:00
Maxime
e83b992eef
Fix seasons random ( #13224 )
...
Sorting was always enabled so removed the `enableSorting` parameter
in QueryResult method.
2025-06-18 00:41:09 +02:00
Nyanmisaka
e8291fc856
Fix QSV "static surface pool size exceeded" on Windows
...
d3d11va doesn't support dynamic pool size, use vpp filter ctx to relay to prevent encoder async and bframes from exhausting the decoder pool.
2025-06-17 15:02:13 +08:00
gnattu
368808eba4
Don't check dynamic metadata removal for static HDR formats
...
Those videos have no metadata to be removed at all, just force transcoding when the client does not support it.
2025-06-17 02:29:16 +08:00
JPVenson
0e1be6ce30
Use proper scheduler that honors the parallel task limit ( #14281 )
2025-06-15 15:21:11 -06:00
JPVenson
4cd0a2ed8d
Always set update action when item does not exist ( #14304 )
2025-06-15 15:19:57 -06:00
Tim Eisele
aa05185917
Only remove image file if it exists ( #14302 )
2025-06-15 15:19:30 -06:00
ThunderClapLP
6b5ce934b3
Fix existing media segments not being handled on scan ( #14218 )
2025-06-10 07:45:09 -06:00
gnattu
bdb3adeb30
Don't attempt to do metadata removal for dovi without fallback ( #14240 )
2025-06-08 07:29:17 -06:00
Niels van Velzen
547b8cafb1
Merge pull request #13307 from qiqian/master
...
always sort season by index number
2025-06-07 21:52:01 +02:00
JPVenson
d5672ce407
Add declarative backups for migrations ( #14135 )
2025-06-03 16:49:41 -06:00
Shane Powell
08b2ffeaab
fixes #14193 ( #14203 )
2025-06-03 15:21:35 -06:00
nyanmisaka
1ee705f3e1
Fix RKRGA 2pass scaling issue caused by auto AR reduction
...
Signed-off-by: nyanmisaka <nst799610810@gmail.com >
2025-05-26 23:49:04 +08:00
nyanmisaka
0e0c7c5c59
Offload 1080p+ subtitle scaling to RKRGA
...
Signed-off-by: nyanmisaka <nst799610810@gmail.com >
2025-05-26 23:49:04 +08:00
theguymadmax
c3762186da
Fix collection behavior when sorting by rating or runtime ( #14148 )
...
Co-authored-by: Max <no@example.com >
2025-05-22 07:05:14 -06:00
nyanmisaka
56231222df
Enable OpenCL deinterlacer for AMF on Windows when available
...
Signed-off-by: nyanmisaka <nst799610810@gmail.com >
2025-05-20 22:07:00 +08:00
JPVenson
fe2596dc0e
Add Full system backup feature ( #13945 )
2025-05-18 18:39:04 -06:00
Tim Eisele
49c6a99e00
Cleanup external item data cleanup ( #14072 )
2025-05-09 08:35:29 -06:00
Nyanmisaka
07093c84c8
Use VBR and MBBRC in QSV encoders for better quality ( #14079 )
CodeQL / Analyze (csharp) (push) Waiting to run
OpenAPI / OpenAPI - HEAD (push) Waiting to run
OpenAPI / OpenAPI - BASE (push) Waiting to run
OpenAPI / OpenAPI - Difference (push) Blocked by required conditions
OpenAPI / OpenAPI - Publish Unstable Spec (push) Blocked by required conditions
OpenAPI / OpenAPI - Publish Stable Spec (push) Blocked by required conditions
Tests / run-tests (macos-latest) (push) Waiting to run
Tests / run-tests (ubuntu-latest) (push) Waiting to run
Tests / run-tests (windows-latest) (push) Waiting to run
Project Automation / Project board (push) Waiting to run
Merge Conflict Labeler / Labeling (push) Waiting to run
2025-05-08 14:43:13 -06:00
Tim Eisele
d976f13970
Recognize file changes and remove data on change ( #13839 )
CodeQL / Analyze (csharp) (push) Waiting to run
OpenAPI / OpenAPI - HEAD (push) Waiting to run
OpenAPI / OpenAPI - BASE (push) Waiting to run
OpenAPI / OpenAPI - Difference (push) Blocked by required conditions
OpenAPI / OpenAPI - Publish Unstable Spec (push) Blocked by required conditions
OpenAPI / OpenAPI - Publish Stable Spec (push) Blocked by required conditions
Tests / run-tests (macos-latest) (push) Waiting to run
Tests / run-tests (ubuntu-latest) (push) Waiting to run
Tests / run-tests (windows-latest) (push) Waiting to run
Project Automation / Project board (push) Waiting to run
Merge Conflict Labeler / Labeling (push) Waiting to run
2025-05-04 21:21:44 -06:00
Nyanmisaka
4199f7acc2
Fix the transparency issue of ASS subtitle rendering in HWA ( #14024 )
2025-05-03 08:21:08 -06:00
Tim Eisele
f576783ae1
Fix distinction queries ( #14007 )
2025-04-26 18:49:30 -06:00
JPVenson
8ee358de2c
Check for path overlaps ( #12832 )
2025-04-26 09:30:25 -06:00
Tim Eisele
df5671263f
Merge pull request #13847 from Shadowghost/rework-chapter-management
...
Rework chapter management
2025-04-26 14:01:12 +02:00
JPVenson
a0931baa8e
Add Api and startup check for sufficient storage capacity ( #13888 )
CodeQL / Analyze (csharp) (push) Has been cancelled
OpenAPI / OpenAPI - HEAD (push) Has been cancelled
OpenAPI / OpenAPI - BASE (push) Has been cancelled
Tests / run-tests (macos-latest) (push) Has been cancelled
Tests / run-tests (ubuntu-latest) (push) Has been cancelled
Tests / run-tests (windows-latest) (push) Has been cancelled
Project Automation / Project board (push) Has been cancelled
Merge Conflict Labeler / Labeling (push) Has been cancelled
OpenAPI / OpenAPI - Difference (push) Has been cancelled
OpenAPI / OpenAPI - Publish Unstable Spec (push) Has been cancelled
OpenAPI / OpenAPI - Publish Stable Spec (push) Has been cancelled
2025-04-20 20:06:50 -06:00
Niels van Velzen
5e4bd744c0
Return SyncPlay group info after creation, add GET group endpoint ( #13935 )
2025-04-20 19:40:23 -06:00
Niels van Velzen
269508be9f
Fix SyncPlay WebSocket OpenAPI schemas ( #13946 )
2025-04-19 13:08:15 -06:00
Tim Eisele
6e9e2f500f
Fix Genre cleanup ( #13916 )
OpenAPI / OpenAPI - BASE (push) Has been cancelled
CodeQL / Analyze (csharp) (push) Has been cancelled
OpenAPI / OpenAPI - HEAD (push) Has been cancelled
Tests / run-tests (macos-latest) (push) Has been cancelled
Tests / run-tests (ubuntu-latest) (push) Has been cancelled
Tests / run-tests (windows-latest) (push) Has been cancelled
Project Automation / Project board (push) Has been cancelled
Merge Conflict Labeler / Labeling (push) Has been cancelled
OpenAPI / OpenAPI - Difference (push) Has been cancelled
OpenAPI / OpenAPI - Publish Unstable Spec (push) Has been cancelled
OpenAPI / OpenAPI - Publish Stable Spec (push) Has been cancelled
2025-04-14 20:43:38 -06:00
Nyanmisaka
8be8ea60f1
Add DoVi Profile 5 support for Rockchip RKMPP ( #13911 )
Merge Conflict Labeler / Labeling (push) Has been cancelled
CodeQL / Analyze (csharp) (push) Has been cancelled
OpenAPI / OpenAPI - HEAD (push) Has been cancelled
OpenAPI / OpenAPI - BASE (push) Has been cancelled
Tests / run-tests (macos-latest) (push) Has been cancelled
Tests / run-tests (ubuntu-latest) (push) Has been cancelled
Tests / run-tests (windows-latest) (push) Has been cancelled
Project Automation / Project board (push) Has been cancelled
OpenAPI / OpenAPI - Difference (push) Has been cancelled
OpenAPI / OpenAPI - Publish Unstable Spec (push) Has been cancelled
OpenAPI / OpenAPI - Publish Stable Spec (push) Has been cancelled
2025-04-13 07:43:58 -06:00
Tim Eisele
cad8de9701
Add Genre cleanup and fix cleanup filter queries ( #13891 )
Merge Conflict Labeler / Labeling (push) Has been cancelled
CodeQL / Analyze (csharp) (push) Has been cancelled
OpenAPI / OpenAPI - HEAD (push) Has been cancelled
OpenAPI / OpenAPI - BASE (push) Has been cancelled
Tests / run-tests (macos-latest) (push) Has been cancelled
Tests / run-tests (ubuntu-latest) (push) Has been cancelled
Tests / run-tests (windows-latest) (push) Has been cancelled
Project Automation / Project board (push) Has been cancelled
OpenAPI / OpenAPI - Difference (push) Has been cancelled
OpenAPI / OpenAPI - Publish Unstable Spec (push) Has been cancelled
OpenAPI / OpenAPI - Publish Stable Spec (push) Has been cancelled
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 )
CodeQL / Analyze (csharp) (push) Waiting to run
OpenAPI / OpenAPI - HEAD (push) Waiting to run
OpenAPI / OpenAPI - BASE (push) Waiting to run
OpenAPI / OpenAPI - Difference (push) Blocked by required conditions
OpenAPI / OpenAPI - Publish Unstable Spec (push) Blocked by required conditions
OpenAPI / OpenAPI - Publish Stable Spec (push) Blocked by required conditions
Tests / run-tests (macos-latest) (push) Waiting to run
Tests / run-tests (ubuntu-latest) (push) Waiting to run
Tests / run-tests (windows-latest) (push) Waiting to run
Project Automation / Project board (push) Waiting to run
Merge Conflict Labeler / Labeling (push) Waiting to run
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